Add missing xts/zoo data with linear interpolation in R

匿名 (未验证) 提交于 2019-12-03 02:00:02

问题:

I do have problems with missing data, but I do not have NAs - otherwise would be easier to handle...

My data looks like this:

time, value 2012-11-30 10:28:00, 12.9 2012-11-30 10:29:00, 5.5 2012-11-30 10:30:00, 5.5 2012-11-30 10:31:00, 5.5 2012-11-30 10:32:00, 9 2012-11-30 10:35:00, 9 2012-11-30 10:36:00, 14.4 2012-11-30 10:38:00, 12.6 

As you can see - there are missing some minute values - it is xts/zoo so I use as.POSIXct... to set the date as an index. How to add the missing timesteps to get a full ts? I want to fill the missing values with linear interpolation.

Thank you for your help!

回答1:

You can merge your data with a vector with all dates. After that you can use na.approx to fill in the blanks (NA in this case).

data1 


回答2:

Thanks to P Lapointe for a cool answer. Also, if you also take advantage of the 'xout' argument in na.approx, you no longer need to do the merger:

data1 


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!