Лог линейной регрессии - PullRequest
1 голос
/ 11 ноября 2019

У меня есть набор данных, и я пытаюсь выполнить преобразование журнала для набора данных, но я получаю сообщение об ошибке, в котором говорится, что ожидаемый 2D-массив получил вместо 1D-массив:

dataset3 = df_sheet_map['Set 3']
dataset3

X2 = dataset3.x
Y2 = dataset3.Y
plt.plot(X2, Y2, 'o')
plt.xlabel('x')
plt.ylabel('y')
plt.show()
print('A logarthimic regression model will be used for this data set')

from sklearn.linear_model import LinearRegression
ln_Y2 = np.log(Y2)
plt.plot(X2, ln_Y2, 'o')
plt.xlabel('x')
plt.ylabel('y')
plt.show()

from sklearn.cross_validation import train_test_split
X2_train, X2_test, Y2_train, Y2_test = train_test_split(X2, Y2, test_size= 0.2, random_state=0)
from sklearn.linear_model import LinearRegression
X2_test = X2_test.reshape(1, -1)

regressor = LinearRegression()
regressor.fit(X2_train,Y2_train)

y_pred = regressor.predict([[X2_test]])

но я показываю следующую ошибку:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-59-f9248c950ce4> in <module>()
      2 X2_train, X2_test, Y2_train, Y2_test = train_test_split(X2, Y2, test_size= 0.2, random_state=0)
      3 from sklearn.linear_model import LinearRegression
----> 4 X2_test = X2_test.reshape(1, -1)
      5 
      6 regressor = LinearRegression()

~\Anaconda3\lib\site-packages\pandas\core\generic.py in __getattr__(self, name)
   5065             if self._info_axis._can_hold_identifiers_and_holds_name(name):
   5066                 return self[name]
-> 5067             return object.__getattribute__(self, name)
   5068 
   5069     def __setattr__(self, name, value):

AttributeError: 'Series' object has no attribute 'reshape'

Может кто-нибудь помочь? Я не уверен, как изменить этот код, как прежде, чем я использовал X2_test = X2_test.reshape(1, -1) Я получил ожидаемый ошибка 2d массив, но получил 1d.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...