r - 在 R 中使用线性插值添加缺失的 xts/zoo 数据

标签 r time-series xts zoo

我确实有丢失数据的问题,但我没有 NA - 否则会更容易处理......

我的数据如下所示:

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

正如您所看到的 - 缺少一些分钟值 - 它是 xts/zoo 所以我使用 as.POSIXct... 将日期设置为索引。如何添加缺失的时间步以获得完整的 ts?我想用线性插值填充缺失值。

感谢您的帮助!

最佳答案

您可以 merge您的数据带有所有日期的向量。之后您可以使用 na.approx填写空白(在这种情况下不适用)。

data1 <-read.table(text="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", header = TRUE, sep=",", as.is=TRUE)
times.init <-as.POSIXct(strptime(data1[,1], '%Y-%m-%d-%H:%M:%S'))
data2 <-zoo(data1[,2],times.init)
data3 <-merge(data2, zoo(, seq(min(times.init), max(times.init), "min")))
data4 <-na.approx(data3)

关于r - 在 R 中使用线性插值添加缺失的 xts/zoo 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16011790/

相关文章:

python - Statsmodels 中时间序列的交叉验证

python - Pandas :如何将时间序列与互补日期合并?

r - 将每周时间序列扩展为每日

r - 更快地计算每个时间步内所有个体之间的距离

r - for循环中的变量赋值

python - 如何计算 Pandas DataFrame 上的滚动累积乘积

应该将 xts 类数据绘制到 png 文件的 R 脚本不会生成 png 文件

r - 用索引将xts/zoo对象写入csv

rvest open.connection 中出现错误(x, "rb"): HTTP error 404

r - 测试字符串是否与位置 x 相同的函数