如何在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