Ошибка простой модели при подборе: найдены входные переменные с непоследовательным количеством выборок - PullRequest
0 голосов
/ 30 марта 2020

Я знаю, что этот вопрос существует в различных формах, но после поиска в Интернете в течение нескольких дней / часов я все еще не нашел ничего, что решило бы мою проблему.

Это моя записная книжка:

import numpy as np
import pandas as pd

X = pd.read_csv('../input/web-traffic-time-series-forecasting/train_1.csv.zip')
X = X.drop('Page', axis=1)
X.fillna(0, inplace=True, axis=0)

X_sliced = X.iloc[:, 0:367]
y_sliced = X.iloc[:, 367:-1]

from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split

linreg = LinearRegression()

X_sliced.drop(X_sliced.iloc[:, 182:367], inplace=True, axis=1) #Here, I make sure that my X_sliced has the same shape as y_sliced

X_sliced.shape

OUT: (145063, 182)

y_sliced.shape

OUT: (145063, 182)

X_train, y_train, X_test, y_test = train_test_split(X_sliced, y_sliced)
linreg.fit(X_train, y_train)

ValueError: Найдены входные переменные с несовместимым числом выборок: [108797, 36266]

Почему я получаю эту ошибку, когда форма моих фреймов данных полностью совпадает?

Ссылка на исходное назначение в kaggle: https://www.kaggle.com/c/web-traffic-time-series-forecasting/overview

1 Ответ

1 голос
/ 30 марта 2020

Вы присвоили выходы train_test_split в неправильном порядке, это должно быть:

X_train, X_test, y_train, y_test = train_test_split(X_sliced, y_sliced) # x, x, y, y not x, y, x, y
...