% 应该是这样的 id score 1 1 2 3 3-6ren">
gpt4 book ai didi

r - 每个id两个周期的 "score"之差

转载 作者:行者123 更新时间:2023-12-04 01:28:56 26 4
gpt4 key购买 nike

我想对每个 id 的两个时间段的“分数”进行区分。

   id <- rep(1:3,each=2)
period <- rep(1:2,3)
score <- c(3,2,4,1,8,5)

df <- data.frame(id, period,score)
df
id period score
1 1 3
1 2 2
2 1 4
2 2 1
3 1 8
3 2 5

我想先按 id 分组,但我还应该按时间段分组,然后求和求分数。我该怎么做?

df %>% group_by(id) %>%

应该是这样的

 id score
1 1
2 3
3 3

最佳答案

我们可以在按'id'分组后使用diff

library(dplyr)
df %>%
group_by(id) %>%
summarise(score = abs(diff(score)))
# A tibble: 3 x 2
# id score
# <int> <dbl>
#1 1 1
#2 2 3
#3 3 3

或者在 base R 中使用 aggregate

aggregate(score ~ id, df, diff)

关于r - 每个id两个周期的 "score"之差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61373047/

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