У меня есть два набора данных. Один - train.csv, другой - test.csv. Я должен построить модель на основе train.csv и проверить ее на test.csv. Характеристики обоих этих наборов данных одинаковы, и у них есть пара категориальных переменных. Но проблема в значениях столбца погоды. Список уникальных значений в столбце погоды в поезде отличается от тестового. Таким образом, после применения get_dummies форма и характеристики dummmytrain и dummytest не идентичны. Каков наилучший способ преодолеть это?
dummytrain = pd.get_dummies(train,prefix_sep = '_',drop_first=True)
dummytrain = dummytrain.drop(['temp','humidity','windspeed','datetime'],axis=1)
dummytest = pd.get_dummies(test,prefix_sep = '_',drop_first=True)
dummytest = dummytest.drop(['temp','humidity','windspeed','datetime'],axis=1)
#create a baseline model with linear regression
x = dummytrain.drop('Total_booking',axis=1)
y = dummytrain['Total_booking']
x_test = dummytest.drop('Total_booking',axis=1)
y_test = dummytest['Total_booking']
reg = LinearRegression()
model = reg.fit(x,y)
y_pred = model.predict(x_test)
mse = mean_squared_error(y_test,y_pred)
mse
Это дает ошибку, как показано ниже. ValueError: shape (2178,31) и (32,) не выровнены: 31 (dim 1 )! = 32 (дим 0)