gpt4 book ai didi

r - 在 R 中组合特定的行数据

转载 作者:行者123 更新时间:2023-12-01 22:21:49 24 4
gpt4 key购买 nike

您好,我有一个数据集,其中一行按订单显示一个项目。一个订单可以有更多的项目,因此数据集中有更多的行。

数据看起来像:

    code        nr. Of items
1 252222016 5
3 252812016 1
5 252812016 1
6 253012016 1
12 253042016 20
13 253042016 20
15 253052016 1
16 253072016 3
18 253082016 4

我想要一个结果,我将对具有相同“代码”的“项目编号”求和并将结果写在行中。如果一个订单有更多商品,我希望将结果写在订单的最后一行,而之前的行将是 NA。

我希望最终解决方案看起来像这样:

        code    nr. Of items    result
1 252222016 5 5
3 252812016 1 na
5 252812016 1 2
6 253012016 1 1
12 253042016 20 na
13 253042016 20 40
15 253052016 1 1
16 253072016 3 3
18 253082016 4 4

非常感谢您的帮助!

最佳答案

您可以使用带有参数fromLast = TRUEduplicated 函数,即

library(dplyr)
df %>%
group_by(code) %>%
mutate(new = replace(cumsum(nr. Of items), duplicated(code, fromLast = TRUE), NA))

#Source: local data frame [9 x 3]
#Groups: code [7]

# code nr new
# <int> <int> <int>
#1 252222016 5 5
#2 252812016 1 NA
#3 252812016 1 2
#4 253012016 1 1
#5 253042016 20 NA
#6 253042016 20 40
#7 253052016 1 1
#8 253072016 3 3
#9 253082016 4 4

关于r - 在 R 中组合特定的行数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39618525/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com