R在循环内调用变量

时间:2015-08-17 22:13:39

标签: r loops which

我试图在循环中创建一个指标索引,但无法找出正确的语法。

在循环之外我会做这样的事情:

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

有什么建议吗?

0 个答案:

没有答案