Я работаю над этим типом данных:
Date Of Stop count
0 2012-01-01 180
1 2013-01-01 348
2 2014-02-01 537
3 2015-02-01 498
4 2016-03-01 719
5 2017-03-01 406
И пытаюсь сделать прогноз на даты, когда у меня нет данных (кол-во)
Это мой кодгде я делю даты на первые 11 месяцев и 12-й месяц. Затем я пытаюсь на основе первых 11 месяцев определить, что я могу получить на 12-м месяце
dfhalf = groupbyClass[(groupbyClass['Date Of Stop'] > '01/01/2012') &
(groupbyClass['Date Of Stop'] < '12/01/2012')]
dfpred = groupbyClass[(groupbyClass['Date Of Stop'] >= '12/01/2012') &
(groupbyClass['Date Of Stop'] < '01/01/2013')]
from sklearn.linear_model import LinearRegression
X = dfhalf['Date Of Stop'] # put dates in here
y = dfhalf['count'] # put knowh in here
model = LinearRegression()
model.fit(X, y)
X_predict = dfpred['Date Of Stop'] # dates for prediction
y_predict = model.predict(X_predict)
Это, к сожалению, вызывает у меня что-то вроде этого:
ValueError: Expected 2D array, got 1D array instead:
array=['2012-01-02T00:00:00.000000000' '2012-01-03T00:00:00.000000000'
'2012-01-04T00:00:00.000000000' '2012-01-05T00:00:00.000000000'
'2012-01-06T00:00:00.000000000' '2012-01-07T00:00:00.000000000'
'2012-01-08T00:00:00.000000000' '2012-01-09T00:00:00.000000000'
'2012-01-10T00:00:00.000000000' '2012-01-11T00:00:00.000000000'
....
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample.
Я пытался использовать различные формы .reshape (-1, 1 и (1, -1)), когда я определяю свой X или Y. Но не повезло. Я не понимаю, что мне нужноделать и почему.