我有这个非常简单的任务需要做,但我似乎无法以任何有效的方式解决它。我应该从一个大数据框中计算不同个体的不同时期的数量。
这是我的数据示例:
myData <- tibble(
individuals = c(rep("r1",9),rep("r2",9), rep("r3",9)),
group = c(rep(324,3), rep(326,3), rep(328,3), rep(330,3), rep (332,3), rep(334,3), rep(336,3), rep(338,3), rep(340,3)))
individuals group
<chr> <dbl>
1 r1 324
2 r1 324
3 r1 324
4 r1 326
5 r1 326
6 r1 326
7 r1 328
8 r1 328
9 r1 328
10 r2 330
# ... with 17 more rows
现在我想创建另一列,其中第一个提到的个人组得到 1,另一个 2,第三个 3,然后再次开始计算下一个个人。期望的结果是这样的:
individuals group period_number
<chr> <dbl> <dbl>
1 r1 324 1
2 r1 324 1
3 r1 324 1
4 r1 326 2
5 r1 326 2
6 r1 326 2
7 r1 328 3
8 r1 328 3
9 r1 328 3
10 r2 330 1
# ... with 17 more rows
我想使用 from 的group_by(individuals)andmutate(period_number =)函数dplyr,但我不知道在里面使用哪个函数mutate()。我试图从这里的其他几个问题中查看(有条件地根据现有列中的特定数值(键)创建新列,如何根据条件将列添加到数据框中?),但由于组列中的数字不是类别但只是在不同时期运行 id 号码,我认为我不能将它们与 eg 一起使用if_else()。
我确信必须有一个相当简单的解决方案,但我似乎无法弄清楚。任何帮助是极大的赞赏!