【发布时间】:2019-02-18 01:54:33
【问题描述】:
我有一个时间序列的月度数据,其中有很多缺失的数据点,设置为 NA。我想简单地从数据中减去年度周期,忽略丢失的条目。似乎分解功能无法处理丢失的数据点,但我在其他地方看到建议使用季节性包。但是我也遇到了 NA 的问题。
这是使用内置数据集的问题的最小可重现示例...
library(seasonal)
# set range to missing NA in Co2 dataset
c2<-co2
c2[c2>330 & c2<350]=NA
seas(c2,na.action=na.omit)
Error in na.omit.ts(x) : time series contains internal NAs
是的,我知道!这就是为什么我要求你省略它们!让我们试试这个:
seas(c2,na.action=na.x13)
Error: X-13 run failed
Errors:
- Adding MV1981.Apr exceeds the number of regression effects
allowed in the model (80).
嗯,有趣,不知道这是什么意思,好吧,请排除 NA:
seas(c2,na.action=na.exclude)
Error in na.omit.ts(x) : time series contains internal NAs
这并没有多大帮助!并且为了很好的衡量
decompose(c2)
Error in na.omit.ts(x) : time series contains internal NAs
我在以下:
R version 3.4.4 (2018-03-15) -- "Someone to Lean On"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
为什么忽略 NA 这样的问题?我显然是完全愚蠢的,但我看不出我在海洋功能上做错了什么。很高兴考虑使用 xts 的替代解决方案。
【问题讨论】:
-
关于 SO 的问题有几个重复项。这里是one。
na.x13在连续 NA 值较少时起作用。 -
seas(na.omit(c2))呢? -
感谢 Moody_Mudskipper 但 seas(na.omit(c2)) 也给了我“na.omit.ts(c2) 中的错误:时间序列包含内部 NA”
-
感谢误用,不敢相信我没有发现那个页面,动物园的第一个解决方案效果很好
标签: r time-series xts