请帮我计算每个日期的唯一 ID 的数量。
所以,最初,有这个 ID 和日期的数据框
ID Date
1 2009/11/1
1 2009/11/2
1 2009/11/2
2 2009/11/1
2 2009/11/1
2 2009/11/2
3 2009/11/1
3 2009/11/3
可以按日期重新排列。如果我们这样做,那么我们将看到 1 号有 3 个唯一的 ID。第 2 条有 2 个唯一 ID,第 3 条有 1 个唯一 ID。所以决赛桌应该是这样的:
Date uniqueIDs
2009/11/1 3
2009/11/2 2
2009/11/3 1
我知道可以聚合aggregate
通过使用sum
如果值为“1”或“0”,如下所示:
aggregate(DataFrame$RoomAv ~ DataFrame$Date, DataFrame, sum)
但如何count每天唯一的 ID 数量? ID 列是整数列。
多谢!
您可以这样做:
# using data.table
library(data.table)
setDT(df)[,uniqueN(ID),.(Date)]
Date V1
1: 2009/11/1 3
2: 2009/11/2 2
3: 2009/11/3 1
# using dplyr
library(dplyr)
df %>%
group_by(Date) %>%
summarise(uniqueid = n_distinct(ID))
Date uniqueid
<chr> <int>
1 2009/11/1 3
2 2009/11/2 2
3 2009/11/3 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)