我有一个包含个人数据的数据框,如下所示:
data2 <- data.frame(Name = c("Peter Parker", "Peter Parker", "Peter Parker",
"Peter Parker", "Peter Parker", "Peter Parker", "Peter Parker", "Benny Thompson", "Benny Thompson",
"Benny Thompson", "Benny Thompson", "Benny Thompson", "Mylo Thony"
), Result = c(150L, 155L, 156L, 154L, 158L, 159L, 159L, 130L, 132L, 138L,
140L, 139L, 177L), Date = c("2018-03-03", "2018-03-04", "2018-03-05",
"2018-03-06", "2018-03-07", "2018-03-09", "2018-03-13", "2018-03-03", "2018-03-04", "2018-03-05",
"2018-03-07", "2018-03-09", "2018-03-11"))
> data2
Name Result Date
1 Peter Parker 150 2018-03-03
2 Peter Parker 155 2018-03-04
3 Peter Parker 156 2018-03-05
4 Peter Parker 154 2018-03-06
5 Peter Parker 158 2018-03-07
6 Peter Parker 159 2018-03-09
7 Peter Parker 159 2018-03-13
8 Benny Thompson 130 2018-03-03
9 Benny Thompson 132 2018-03-04
10 Benny Thompson 138 2018-03-05
11 Benny Thompson 140 2018-03-07
12 Benny Thompson 139 2018-03-09
13 Mylo Thony 177 2018-03-11
它有更多的列,为了简洁起见,我省略了这些列。
我想删除每个条目超过5个的人的过多条目。在这个例子中,Benny正好有5个条目,所以他可以保持“原样”。Mylo只有一个条目,所以他的条目最终将在我的代码的稍后阶段处理(将被删除)。对于彼得我首选的解决方案将是创建3组5个条目,与“彼得帕克1”,“Peter Parker2”和“Peter Parker3”作为名字。我并不关心确切的名字,因为只有结果和最终的日期用于一些预测。我希望它看起来像这样:
Name Result Date
Peter Parker1 150 2018-03-03
Peter Parker1 155 2018-03-04
Peter Parker1 156 2018-03-05
Peter Parker1 154 2018-03-06
Peter Parker1 158 2018-03-07
Peter Parker2 155 2018-03-04
Peter Parker2 156 2018-03-05
Peter Parker2 154 2018-03-06
Peter Parker2 158 2018-03-07
Peter Parker2 159 2018-03-09
Peter Parker3 156 2018-03-05
Peter Parker3 154 2018-03-06
Peter Parker3 158 2018-03-07
Peter Parker3 159 2018-03-09
Peter Parker3 159 2018-03-13
Benny Thompson 130 2018-03-03
Benny Thompson 132 2018-03-04
Benny Thompson 138 2018-03-05
Benny Thompson 140 2018-03-07
Benny Thompson 139 2018-03-09
Mylo Thony 177 2018-03-11
我不知道如何实现这一点。如果这是不可能的,我只想删除彼得所有多余的条目,只保留前5个,这样我至少可以很好地利用那些前5个
1条答案
按热度按时间ttp71kqs1#
由reprex package(v2.0.1)于2023年1月6日创建
你在找这种东西吗?