我需要用不同行的非NA值替换每行的NA值,仅针对每个组中给定列的数据。
假设有以下示例数据:
假设有以下示例数据:
id name
1 a
1 NA
2 b
3 NA
3 c
3 NA
期望输出:
id name
1 a
1 a
2 b
3 c
3 c
3 c
有没有在R中执行这个操作的方法?
id
都至少有一个非NA
值,那么你可以使用任何向前填充函数来进行最后观测值推导,例如zoo
包中的函数:zoo::na.locf(df1[with(df1, order(id, name)), ])
。此处使用了 @akruns 的数据。 - rawr