根据行中的值对R数据帧进行分类

时间:2018-04-10 09:33:08

标签: r dplyr

我有一个数据框,其中包含两列,如下所示: -

                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

1 个答案:

答案 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