时间序列缺失值插补:如何在na_kalman内使用maxgap?
Time series missing value imputation: How to use maxgap inside na_kalman?
因为我只是在寻找一种方法来避免在时间序列插补中对前导零进行缺失值插补。由于前导零通常是时间序列中最长的缺失值序列,如果您使用全局模型预测面板数据,我想通过使用 maxgap 参数来控制这些影响。
maxgap 参数设置在插补过程中仍被替换的连续 NA 的最大值。
但是,如果我想避免替换任何长于 1 的 NA 系列并将 maxgap 设置为 1,则替换发生在较高的值上,而不是像我预期的那样相反。我如何在这里实现我所需要的?
这里有一些例子来说明:
library(imputeTS)
tsAirgap
repl_tsAir <- tsAirgap %>% na_kalman(, model = "StructTS",
smooth = TRUE,
maxgap = 1)
repl_tsAir
However I want to avoid the replacement of any NA series longer than 1 and set maxgap equals 1
对我来说 运行 你的 maxgap = 1 的代码正是这样做的。
在输入序列中,您可以看到多个 NA 间隙。大多数情况下只有 1 个 NA,只有一个系列的 3 个连续 NA。
在应用 na_kalman
和 maxgap = 1
之后,所有单个 NA 都按预期进行估算。连续 3 个 NA 的较长间隙不变。
因为我只是在寻找一种方法来避免在时间序列插补中对前导零进行缺失值插补。由于前导零通常是时间序列中最长的缺失值序列,如果您使用全局模型预测面板数据,我想通过使用 maxgap 参数来控制这些影响。
maxgap 参数设置在插补过程中仍被替换的连续 NA 的最大值。
但是,如果我想避免替换任何长于 1 的 NA 系列并将 maxgap 设置为 1,则替换发生在较高的值上,而不是像我预期的那样相反。我如何在这里实现我所需要的?
这里有一些例子来说明:
library(imputeTS)
tsAirgap
repl_tsAir <- tsAirgap %>% na_kalman(, model = "StructTS",
smooth = TRUE,
maxgap = 1)
repl_tsAir
However I want to avoid the replacement of any NA series longer than 1 and set maxgap equals 1
对我来说 运行 你的 maxgap = 1 的代码正是这样做的。
在输入序列中,您可以看到多个 NA 间隙。大多数情况下只有 1 个 NA,只有一个系列的 3 个连续 NA。
在应用 na_kalman
和 maxgap = 1
之后,所有单个 NA 都按预期进行估算。连续 3 个 NA 的较长间隙不变。