我有一个数据框对象,其中包含欧元/美元货币对每秒的间隔。但从理论上讲,它可以是任何间隔,如果是这种情况,它可能是这样的:
2015-11-10 01:00:00+01:00 1.07616
2015-11-10 01:01:00+01:00 1.07605
2015-11-10 01:02:00+01:00 1.07590
2015-11-10 01:03:00+01:00 1.07592
2015-11-10 01:04:00+01:00 1.07583
我想使用线性回归从数据框中绘制趋势线,但是我不确定如何在时间序列中实现最佳方式,即使是这样一个小的时间序列。
目前,我通过将时间替换为(这只是为了展示我希望达到的效果)列表,该列表范围从0到时间序列列表长度,来进行调试。
x = list(range(0, len(df.index.tolist()), 1))
y = df["closeAsk"].tolist()
使用numpy进行数学运算
fit = np.polyfit(x,y,1)
fit_fn = np.poly1d(fit)
最后我会绘制这个函数,同时将df["closeAsk"]与其一起呈现,以便理解趋势。
plt.plot(x,df["closeAsk"], '-')
plt.plot(x,y, 'yo', x, fit_fn(x), '--k')
plt.show()
然而现在X轴上只是无意义的数字,我希望它们能显示时间序列。
df["time_series_data"]
替换x
呢? - lanery