填充大量时间序列数据

在时间序列数据中填补缺失值的最佳方法是什么?数据在工作时间内变化很大,且缺失数据成块出现。

我尝试过后填、前填和均值填充技术来填补数据。我还使用pandas包尝试了插值法(线性、最近邻和多项式),但效果不太理想。输入图片描述

第一张图显示了4月6日至9日左右的缺失数据。第二张图是在使用线性插值填补缺失值后的结果。

填补这种数据的最佳方法是什么?我担心线性插值会导致数据污染。

我读了一些关于卡尔曼滤波器的内容,但不确定如何使用它。


回答:

这真的取决于缺失数据块的大小,但在某些情况下,训练模型以预测缺失值可能有效。
除了使用线性回归,你还可以尝试其他模型,例如k-近邻回归。此外,datawig模块(Github)使用神经网络来学习机器学习模型,以填补表格中的缺失值。

Python中的卡尔曼滤波器可以在FilterPy模块中找到。更多信息请阅读文档这里

此外,由于你处理的是时间序列数据,你可以看看ARIMA模型是否能预测你的缺失值。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注