我试图通过两组(ID和循环分类变量“current.group”)来估算数值变量“x.val”的LOCF,但我想让这些组在它们被不同组的行分隔的地方不同)
data.frame(ID = c("1001", "1001", "1001", "1001", "1001", "1001", "1001", "1002", "1002", "1002", "1002", "1002", "1002", "1002"),
current.group = c("a", "a", "b", "a", "b", "b", "c", "a", "a", "a", "a", "a", "a", "c"),
x.val = c(433, NA, NA, 362, NA, NA, 125, 158, NA, NA, NA, 111, NA, 101))
我想要实现的是仅对当前组进行插补,主题 1001 的第 4 个位置与第 1 行和第 2 行的分组“a”相同,但是一个新的循环,所以我希望将其分离为一个不同的组从第 1 行和第 2 行开始。结果应该是:
1001, 1001, 1001, 1001, 1001, 1001, 1001, 1002, 1002, 1002, 1002, 1002, 1002, 1002
a, a, b, a, b, b, c, a, a, a, a, a, a, c
433, 433, NA, 362, NA, NA, 125, 158, 158, 158, 158, 111, 111, 101
但是,如果我使用 group_by 函数,它将只获取整个数据帧中“current.group”的所有实例(按 ID 分组)。我倾向于认为有一种方法可以创建一个派生变量,该变量在这个新变量上指示这些不同的组和 group_by。但是,我想知道 dplyr 中是否有不同的方法或使用其他方法
这很难解释我的意思所以我希望我想要一个 group_by 但区分由不同组的行分隔的实例