每个值的累积计数 [英] Cumulative count of each value
本文介绍了每个值的累积计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想创建一个累加计数器,以显示每个值出现的次数。
I want to create a cumulative counter of the number of times each value appears.
例如说我有此列:
id
1
2
3
2
2
1
2
3
这将变成:
id count
1 1
2 1
3 1
2 2
2 3
1 2
2 4
3 2
等...
谢谢
推荐答案
dplyr
的方式:
library(dplyr)
foo <- data.frame(id=c(1, 2, 3, 2, 2, 1, 2, 3))
foo <- foo %>% group_by(id) %>% mutate(count=row_number())
foo
# A tibble: 8 x 2
# Groups: id [3]
id count
<dbl> <int>
1 1 1
2 2 1
3 3 1
4 2 2
5 2 3
6 1 2
7 2 4
8 3 2
最后以 id分组
。如果不希望将其分组,请添加%>%ungroup()
。
That ends up grouped by id
. If you want it not grouped, add %>% ungroup()
.
这篇关于每个值的累积计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文