Неверный синтаксис erroExpected 2D-массив, вместо него получен 1D-массив для линейной регрессии - PullRequest
0 голосов
/ 27 сентября 2019

это мой пример набора данных

        RH
   0    79.8
   1    79.2
   2    79.4
   3    78.4
   4    77.8

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

linreg=LinearRegression()

datawithnull= taoRH["RH"].dropna()
datawithoutnull= datawithnull.dropna()

train_data_x= datawithoutnull.values.reshape(-1, 1)
train_data_y= datawithoutnull.values.reshape(-1, 1)

linreg.fit(train_data_x,train_data_y)

test_data= datawithnull.iloc[:]
rh_predicted[["RH"]]= pd.DataFrame(linreg.predict(test_data))

datawithnull.RH.fillna(rh_predicted.RH,inplace=True)

я получаю это как ошибку

ValueError: Ожидаемый 2D-массив, вместо него получен 1D-массив: array = [79.8 79.2 79.4... 75,2 74,2 74,9].Измените ваши данные, используя array.reshape (-1, 1), если ваши данные имеют одну функцию, или array.reshape (1, -1), если он содержит один образец.

...