Python 预测数据,如何处理缺失数据?

Python 预测数据,如何处理缺失数据?,python,pandas,scikit-learn,Python,Pandas,Scikit Learn,我在使用ARIMA预测时间序列时遇到问题。 我有缺失值的数据,我需要它们来应用ARIMA,我该怎么做 以下是数据外观的示例: City utc_time Meteo(degrees) A 12:00:00 21 A 13:00:00 21 A 14:00:00 22 A 15:00:00 31 A 16:00:00 A 17:00:00 28 A 18:00:00 A 19:00:00 A 20:00:00 您

我在使用ARIMA预测时间序列时遇到问题。 我有缺失值的数据,我需要它们来应用ARIMA,我该怎么做

以下是数据外观的示例:

City  utc_time Meteo(degrees)
A     12:00:00 21 
A     13:00:00 21
A     14:00:00 22
A     15:00:00 31 
A     16:00:00 
A     17:00:00 28
A     18:00:00 
A     19:00:00 
A     20:00:00

您也可以考虑<代码>插值()/<代码>:

df["Meteo(degrees)"].interpolate(method="linear")
然后选择您喜欢的
方法
。文档

这对我很有用:

df["Meteo(degrees)"] = df["Meteo(degrees)"].fillna(df["Meteo(degrees)"].bfill())

你是在问“我如何将缺失值更改为某个值?”还是在问“为我的ARIMA计算填充缺失值的最佳方法是什么?”这是非常不同的问题。这更像是你提出的第二句话。我从这个网站上获取了教程:但是当我将它用于我的数据时,由于我的数据缺少值,它给了我一个错误,即无法处理缺少的数据来测试时间序列的平稳性。在这种情况下,我认为问题太广泛了。人们写博士论文来填补缺失的价值。我建议你使用一些不同于ARIMA的技术,这对你实际拥有的数据更有利。你知道可以使用ARIMA以外的模型的例子吗?因为可能会有混淆,但要解释整个事情。我需要将18:00:00之前的值作为训练集,将测试集从该时间设置为20:00:00。由于缺少值,我无法对其执行任何操作,因此我必须处理这些缺少的值。有没有办法使其更有效,因为我可以有其他值,例如风速等?您可以使用
df[df.columns[2::].interpolate(method=“linear”)
对前两列之后的所有列应用相同的插值算法。如果您想使用各种算法,只需迭代不同的列并对每个列进行插值。