gpt4 book ai didi

r - 按顺序填充/重新扩展缺失值,而不是插补

转载 作者:行者123 更新时间:2023-12-02 06:53:04 25 4
gpt4 key购买 nike

我有一个如下所示的数据框:

library(dplyr)
df <- expand.grid(
id = 1:3,
key = 1:10) %>%
filter(!(id == 1 & key <= 4)) %>%
filter(!(id == 2 & key %in% c(1:3, 6, 7, 10))) %>%
filter(!(id == 3 & key %in% c(1, 2, 4, 5, 7:10))) %>%
arrange(id, key) %>%
cbind(value = c(10, 11, 15, 17, 20, 30, 1, 6, 8, 100, 0.2, 0.7))
  • id == 1 转到 key == 10
  • id == 2 转到 key == 9
  • id == 3 转到 key == 6

我想为 key 填充/重新扩展整数序列直到键的最大值,值可以是 NA(这不是插补问题)...

所以对于 id == 3 我想要键 1、2、3、4、5、6...值 == NA

提前致谢!

最佳答案

再向你的管道添加一个具有讽刺意味的名称 complete:

library(tidyr)
df <- expand.grid(
id = 1:3,
key = 1:10) %>%
filter(!(id == 1 & key <= 4)) %>%
filter(!(id == 2 & key %in% c(1:3, 6, 7, 10))) %>%
filter(!(id == 3 & key %in% c(1, 2, 4, 5, 7:10))) %>%
arrange(id, key) %>%
cbind(value = c(10, 11, 15, 17, 20, 30, 1, 6, 8, 100, 0.2, 0.7)) %>%
complete(id, key)
# id key value
# 1 1 3 NA
# 2 1 4 NA
# 3 1 5 10.0
# 4 1 6 11.0
# 5 1 7 15.0
# 6 1 8 17.0
# 7 1 9 20.0
# 8 1 10 30.0
# 9 2 3 NA
# 10 2 4 1.0

编辑

要超越数据使用中的键:

complete(df, id, key = 1:10)

关于r - 按顺序填充/重新扩展缺失值,而不是插补,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38489481/

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