使用if-else循环进行索引

时间:2017-11-05 15:29:49

标签: r for-loop indexing conditional

我试图使用0和1的列为我的df创建索引。每次循环遇到1时,我想要一个新的索引号。

x<-c(0,0,0,0,1,0,0,0,1,0,0,1,0,0,0,1,0,1,0,1)
index<-rep(1,20)
df<-as.data.frame(cbind(x,index))
###
for(i in 2:nrow(df)){
df$index<-ifelse(x[i]==0,index[i],index[i-1]+1)
}

结果会生成一个2的索引列,但它应该是一个看起来像这样的列...

1 1 1 1 2 2 2 2 3 3 3 4 4 4 4 5 5 6 6 7

当我将索引[i]和索引[i-1] +1替换为&#34; a&#34;和&#34; b&#34;我刚刚回来,所以我的for循环看起来有点不对劲。任何帮助将不胜感激!

0 个答案:

没有答案