我可以使用时间序列来分析这些数据吗?

时间:2019-06-12 14:26:52

标签: python pandas

我无法识别时间序列的参数,所以我想知道a是否可以在该序列上应用时间序列分析

这是数据

             a
03/2017      25
04/2017      427
05/2017      42
06/2017      56
07/2017      204
08/2017      28
09/2017      26
10/2017      225
11/2017      84
12/2017      532
01/2018      0
02/2018      665
03/2018      462
04/2018      238
05/2018      84
06/2018      812
07/2018      273
08/2018      364
09/2018      35
10/2018      175
11/2018      182
12/2018      700
01/2019      32
02/2019      0

rolmeanA= df["a"].rolling(window=12).mean()
rolstdA = df["a"].rolling(window=12).std()
plt.plot(rolmeanA, color="black", label='rolmean')
plt.plot(rolstdA, color="green", label='rolstd')
plt.plot(df["a"], color="red", label='A')

plt.xlabel('Dates')
plt.ylabel('Quantities')
plt.legend()
plt.title("a Plot")
plt.show()

如果我可以使用时间序列(如何或如何找到平稳性?) 如果您对如何分析本系列有任何解决方案,请帮助我。 任何帮助将不胜感激。如果您发现错误的问题,我会删除它

enter image description here

1 个答案:

答案 0 :(得分:1)

出于平稳性考虑,您可以使用以下scipy软件包运行ADfuller测试:

from statsmodels.tsa.stattools import adfuller
result = adfuller(df["a"].values)

检查变量 results 中的p值,以检查平稳假设是对还是错(有一定概率)。如果不平稳,则可以尝试分析导致值差异(而不是数值差异)的时间序列。

您还可以使用此scipy软件包将系列分解为趋势和季节模式:

import statsmodels.api as sm
decomposition = sm.tsa.seasonal_decompose(df["a"].values, model = 'additive', freq=1)
decomposition.plot()

尝试更改模型的类型(加法或乘法),并可视化数据以尝试得出一些结论(您要做什么)。

有很多不同的分析,您的目标是什么?预测?建立一个解释模型?检查相关性?每个目标都有许多不同的模型和解决方案,因此为了给您提供解决方案,您应该清楚自己需要什么。