计算以上所有行的唯一值的数量

时间:2019-01-20 10:46:01

标签: r unique

我的数据框看起来像这样:

USER URL
1    homepage.com
1    homepage.com/welcome
1    homepage.com/overview
1    homepage.com/welcome

我想要的是具有以下值的向量:

UNIQUE
1
2
3
3

我该怎么做?

2 个答案:

答案 0 :(得分:3)

我们可以使用cumsumduplicated

df$unique <- cumsum(!duplicated(df$URL))
df$unique
#[1] 1 2 3 3

duplicated为我们提供一个值是否重复的逻辑矢量,我们将其取反(!),然后在其上使用cumsum,这样我们就可以积累唯一值的总和。

答案 1 :(得分:1)

使用dplyr添加新列:

library(dplyr)
df %>% 
  mutate(Dups=cumsum(!duplicated(URL)))