根据第二个变量的级别创建ID变量

时间:2015-05-14 14:02:20

标签: r

使用R我想在数据框中添加一个ID变量,但我希望它能在data.frame中的第二个变量的每个级别重新开始(可怕的句子,希望有一个例子有帮助)。

所以,我知道如何使用mutate

创建一个扩展data.frame长度的ID变量
dat <- mutate(dat, id=rownames(dat))
Var1    ID
1        1
1        2
1        3
1        4
1        5
1        6
2        7
2        8
2        9
2       10
2       11

但我真正想要的是一旦Var1命中2(然后是3,然后是4等),ID变量就会重新开始。我想你可以使用某种类型的apply函数,或者可能使用dplyr,但我不确定是否有一个。以下是我想要做的事情。

Var1 ID
1    1
1    2
1    3
1    4
1    5
1    6
1    7
2    1
2    2
2    3
2    4
2    5
2    6
2    7
2    8
2    9
3    1
3    2
3    3
3    4
3    5
3    6
3    7
3    8
3    9

0 个答案:

没有答案