1
我想在A爲真後,將行2中的myDF $ cut設置爲true,除非這兩行中的b個單元格的值合計超過2.我已經用for循環做了它,但是我發現它運行速度很慢,所以我希望有一種避免循環的方法。使用矢量化操作在DF的多個單元格上創建條件
set.seed(55)
myDF <- data.frame(a=as.logical (rbinom(136063,1,0.1)),
b=rbinom(136063,2,0.2))
myDF$cut <- F
for (i in 3:length (myDF$a)) {
if (myDF$a[i-1] & myDF$b[i] <2) myDF$cut[i]<- T
if (myDF$a[i-2]& (myDF$b[i]+myDF$b[i-1]) < 2) myDF$cut[i] <- T
}