gpt4 book ai didi

r - 这是 group_by 和 lead/lag 中的错误吗?

转载 作者:行者123 更新时间:2023-12-04 11:36:29 25 4
gpt4 key购买 nike

例子:

library(dplyr) # version 0.4.3

df <-
data.frame(hour = 0:11, minutes = runif(12, 0, 59), count = rpois(12, 3)) %>%
arrange(hour, minutes)

df %>%
group_by(hour) %>%
mutate(diff = count - lag(count, default = max(count)))

引发错误:

Error: expecting a single value

以下引发了不同的错误:

> df %>%
+ group_by(hour) %>%
+ mutate(diff = count - lag(count, default = count))
Error: not compatible with requested type

我觉得两者都应该有效,答案应该是包含 diff 列零的数据框。这是因为每组只有一行,我希望默认的不存在行值是该组中的最大计数。

最佳答案

第一个错误似乎是版本特定的,但第二个错误我们可以通过选择“count”的first observation 或last one 来删除。

df %>%
group_by(hour) %>%
mutate(diff = count - lag(count, default = first(count)))

关于r - 这是 group_by 和 lead/lag 中的错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39608616/

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