如何在R中的重复变量上迭代新列中的计数
我有一个如下所示的数据集:如何在R中的重复变量上迭代新列中的计数,r,R,我有一个如下所示的数据集: Num Flavor 1 Chocolate 2 Chocolate 3 Chocolate 4 Strawberry 5 Strawberry 6 Vanilla 7 Chocolate Num Cnt Flavor 1 1 Chocolate 2 2 Chocolate 3 3 Chocolate 4 1 Strawberr
Num Flavor
1 Chocolate
2 Chocolate
3 Chocolate
4 Strawberry
5 Strawberry
6 Vanilla
7 Chocolate
Num Cnt Flavor
1 1 Chocolate
2 2 Chocolate
3 3 Chocolate
4 1 Strawberry
5 2 Strawberry
6 1 Vanilla
7 4 Chocolate
我的目标是创建一个列,该列计算每个唯一值在数据中出现的次数,在其计算的变量旁边,如下所示:
Num Flavor
1 Chocolate
2 Chocolate
3 Chocolate
4 Strawberry
5 Strawberry
6 Vanilla
7 Chocolate
Num Cnt Flavor
1 1 Chocolate
2 2 Chocolate
3 3 Chocolate
4 1 Strawberry
5 2 Strawberry
6 1 Vanilla
7 4 Chocolate
等等 您可以使用排列和变异来解决此问题。不确定这是不是最简单的方法
library("tidyverse")
df %>%
arrange(Flavor) %>%
group_by(Flavor) %>%
mutate(Cnt = 1:length(Flavor)) %>%
arrange(Num)
# A tibble: 7 x 3
# Groups: Flavor [3]
Num Flavor Cnt
<int> <fct> <int>
1 1 Chocolate 1
2 2 Chocolate 2
3 3 Chocolate 3
4 4 Strawberry 1
5 5 Strawberry 2
6 6 Vanilla 1
7 7 Chocolate 4
您不需要安排以获得相同的输出。dt%>%group\u byFlavor%>%mutateCnt=seq\u alongFlavor返回相同的结果。您的代码不工作。它到底出了什么问题?对我来说很好。更简短的是,有了变异,你可以做…%>%mutateCnt=1:n