我有一个数据框,其中包含两列,如下所示: -
x values
1 tag -2
2 tag -3
3 x1 4
4 tag 5
5 x1 6
6 x2 7
7 x3 5
如何基于"标记"创建第三个名为set的col? x col中的值如下所示?
x values set
1 tag -2 set1
2 tag -3 set2
3 x1 4 set2
4 tag 5 set3
5 x1 6 set3
6 x2 7 set3
7 x3 5 set3
答案 0 :(得分:5)
尝试这个简单的解决方案:
df$set<-paste0("set",cumsum(df$x=="tag"))
df
x set
1 tag set1
2 tag set2
3 x1 set2
4 tag set3
5 x1 set3
6 x2 set3
7 x3 set3