我试图在循环中创建一个指标索引,但无法找出正确的语法。
在循环之外我会做这样的事情:
df1$flagVar <- 0
indicatorIndex <- which(df1$Sales > 0)
df1[indicatorIndex,'flagVar'] <- 1
在循环中我尝试了这个:
for(i in variableNames){
newVar <- paste(i,'_flag', sep = '')
indIndex <- which(df1[df1[,i] > 0,])
df1[,newVar] <- 0
df1[indIndex,newVar] <- 1
}
但它突破了此错误消息:
Error in which(df1[df1[,i] > 0,]) : argument to 'which' is not logical
有什么建议吗?