将连续ID分配给连续的分组数据

时间:2016-11-12 18:27:49

标签: r

说我有以下数据框:

<class '__main__.MyForm'>

简而言之,名称可以多次出现,但只有连续的名称值(最多为最大问题数)才应与相同的唯一标识符(ID)相关联。例如,我想创建此列:

$Name     $Question
Bob       1
Bob       2  ---> Same Bob as above
Amy       1
Amy       2
Bob       1  ---> A different Bob than above, but shares the same name
Bob       2

问题将始终具有相同的序列。即独特的人会有问题1和2.

我能想到的这种方式就像

$Name     $Question    $ID
Bob       1            1
Bob       2            1
Amy       1            2
Amy       2            2
Bob       1            3
Bob       2            3

在dplyr中进行分组然后使用nrow不起作用,因为所有Bob值都将组合在一起。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

事实证明,这很简单。

library(data.table)
d$ID = rleid(d$Name)

感谢Rich Scriven上面的评论!