【发布时间】:2017-10-12 15:01:17
【问题描述】:
假设我有以下data.frame:
t<-c(1,1,2,4,5,4)
u<-c(1,3,4,5,4,2)
v<-c(2,3,4,5,NA,2)
w<-c(NA,3,4,5,2,3)
x<-c(2,3,4,5,6,NA)
df<-data.frame(t,u,v,w,x)
我想用代表 NA 前后案例平均值的值替换 NA,除非行以 NA 开始(第 4 行)或结束(第 5 行)。当行以 NA 开头时,我想用以下情况替换 NA。当行以 NA 结尾时,我想用前一种情况替换 NA。
因此,我希望我的输出看起来像:
t<-c(1,1,2,4,5,4)
u<-c(1,3,4,5,4,2)
v<-c(2,3,4,5,3.5,2)
w<-c(3,3,4,5,2,3)
x<-c(2,3,4,5,6,6)
df<-data.frame(t,u,v,w,x)
【问题讨论】:
-
不要将您的输出放在评论中,而是编辑您的问题。
-
尝试从
zoo查看?na.aggregate -
后面的case和前面的case是什么意思?
-
选择数据并按下 control k。这会将它缩进 4 个空格,在这种情况下 SO 会正确格式化它。
-
感谢您的思考! @Mike:我指的是同一行中 NA 之前和 NA 之后的值。因此,我还没有找到正确的选项。很抱歉不清楚。 @G:感谢您的帮助!