使用以R中的NA值开头或结尾的列来插值数据

时间:2018-02-06 07:06:04

标签: r interpolation na

我正在插入数据,但是以NA值开头或结尾的行的列不会进行插值。 我发现的唯一解决方案是在列的开头或结尾删除那些NA行,但这并不理想,因为我想保留这些行。

输入的数据帧(df)示例:

year    value
2000    NA
2001    NA
2002    9
2003    7
2004    NA
2005    6
2006    NA
2007    4
2008    NA

代码段:

install.packages("zoo")
library(zoo) 

newValue <- na.approx(df$value)
df$Value <- newValue 

所需的输出:

year    value
2000    NA
2001    NA
2002    9
2003    7
2004    6.5
2005    6
2006    5
2007    4
2008    NA

当第一行或最后一行具有NA值时,如何在保留这些行的同时插入数据?

1 个答案:

答案 0 :(得分:2)

通过@akrun解决方案

newValue <- na.approx(df$value, na.rm = FALSE) 
df$Value <- newValue