【发布时间】:2021-11-01 20:17:10
【问题描述】:
我有一个包含随机缺失值的多元时间序列数据集(近 30 年)。
| T | S | po4 | si | din |
|---|---|---|---|---|
| 9.00000 | NA | 0.290 | 5.310 | 18.51 |
| 8.45000 | NA | 0.130 | 6.180 | 14.74 |
| 13.60000 | 36.46000 | 0.010 | 0.500 | 1.86 |
| 23.20000 | 32.12000 | 0.010 | 6.580 | 0.81 |
| 26.00000 | 32.13000 | 0.070 | 0.500 | 0.23 |
| NA | 35.41400 | 0.010 | 1.670 | 0.72 |
| 24.80000 | 36.42000 | 0.000 | 3.540 | |
| 24.20000 | 33.16000 | 0.110 | 2.020 | |
| 22.50000 | 37.60000 | 0.040 | 0.400 | |
| 16.32000 | 36.01000 | 0.020 | 2.900 | |
| 17.60000 | 38.04000 | 0.010 | 0.970 | |
| 9.70000 | 36.36000 | 0.120 | 7.950 | |
| 13.80000 | 38.33000 | 0.010 | 5.760 | |
| 7.90000 | 35.51000 | 0.060 | 2.350 | |
| 11.90000 | 38.33000 | 0.030 | 3.410 | |
| 24.10000 | 36.30000 | 0.020 | 0.730 | |
| 25.20000 | 35.77000 | 0.020 | 1.370 | |
| 24.70000 | 37.54000 | 0.330 | 0.700 | |
| 5.75000 | 33.26000 | 0.120 | 0.860 | |
| 13.30000 | 33.14000 | 0.000 | 0.000 | |
| 13.60000 | 38.21265 | 0.000 | 0.190 | |
| 15.70000 | 28.33000 | 0.040 | 11.500 | 41.64 |
我想填补空白,以便在时间序列分析的内容中尝试不同的技术以保持恒定的频率(我有一个带有缺失值的月度频率)。 我曾尝试在 r 中使用 mouse 包 并决定与 with() 和 pool() 一起使用哪个估算数据集,但我不想在模型中使用所有这些数据集,而是获得最正确的数据集并使用该数据集进行进一步分析。 我怎样才能做到这一点?我怎样才能找到最好的?
否则,您能建议我另一种方法来替代老鼠吗?
非常感谢您
【问题讨论】:
-
您的意思是从多个估算数据集中“正确一个”数据集还是从不同建模方法中提取多个数据集?如果第一个,没有“正确”的,这正是使用多个数据集进行多重插补的点。
-
对于时间序列:forecast、tsibble 或 timetk 包。它们包含用于填充时间序列中缺失值的函数。
标签: r time-series missing-data imputation r-mice