我有一个包含以下条目的数据集df。
Date Count
19/09/2019 1491
20/09/2019 1692
21/09/2019 1753
22/09/2019 1817
23/09/2019 1986
24/09/2019 2022
25/09/2019 2343
26/09/2019 2277
27/09/2019 2343
28/09/2019 2599
29/09/2019 2622
30/09/2019 2704
01/10/2019 2903
02/10/2019 3035
03/10/2019 3099
04/10/2019 3204
05/10/2019 3285
我实际上正在尝试使用ARIMA分析数据集。我正在尝试按照帖子
中提到的步骤进行操作https://machinelearningmastery.com/arima-for-time-series-forecasting-with-python/
但是我也面临着一些问题。
from pandas.plotting import autocorrelation_plot
autocorrelation_plot(series)
pyplot.show()
我正在尝试获取autocorrelation_plot,但是出现以下错误:
TypeError: can only concatenate str (not "int") to str
也是
当我尝试使用以下方法获取计数值时:
X = df.values
它以元组对的形式返回我
array([['19/09/2019', 1491],
['20/09/2019', 1692],
['21/09/2019', 1753],
['22/09/2019', 1817],
['23/09/2019', 1986],
['24/09/2019', 2022],
['25/09/2019', 2343],
['26/09/2019', 2277],
['27/09/2019', 2343],
不仅仅是计数。谁能建议我在这里做错了什么。
答案 0 :(得分:0)
您的第一步是创建TimeSeries
,因此将to_datetime
与DataFrame.set_index
一起使用:
df['Date'] = pd.to_datetime(df['Date'], dayfirst=True)
series = df.set_index('Date')['Count']
print (series)
Date
2019-09-19 1491
2019-09-20 1692
2019-09-21 1753
2019-09-22 1817
2019-09-23 1986
2019-09-24 2022
2019-09-25 2343
2019-09-26 2277
2019-09-27 2343
2019-09-28 2599
2019-09-29 2622
2019-09-30 2704
2019-10-01 2903
2019-10-02 3035
2019-10-03 3099
2019-10-04 3204
2019-10-05 3285
Name: Count, dtype: int64
print (series.index)
DatetimeIndex(['2019-09-19', '2019-09-20', '2019-09-21', '2019-09-22',
'2019-09-23', '2019-09-24', '2019-09-25', '2019-09-26',
'2019-09-27', '2019-09-28', '2019-09-29', '2019-09-30',
'2019-10-01', '2019-10-02', '2019-10-03', '2019-10-04',
'2019-10-05'],
dtype='datetime64[ns]', name='Date', freq=None)