首页 > 解决方案 > 当我将训练集放入其中时,回归对象的原因和错误消息

问题描述

我正在 udemy 上一门课程,该课程的代码与我相同,但由于某种原因我的课程没有运行:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

dataset = pd.read_csv("Salary_Data.csv")
x = dataset.iloc[:, -1].values
y = dataset.iloc[:, 1].values

from sklearn.model_selection import train_test_split
x_train, x_test, y_train, y_test = train_test_split(x, y, train_size=2/3, 
random_state = 0)

#Linear Regression Algorithm fitting into our data
from sklearn.linear_model import LinearRegression
regressor = LinearRegression()
regressor.fit(x_train, y_train)

错误:

Traceback (most recent call last):

File "<ipython-input-15-eb508eb13457>", line 3, in <module>
 regressor.fit(x_train, y_train)

File "/home/tarun007/anaconda3/lib/python3.7/site-packages/sklearn/linear_model/base.py", line 458, in fit
 y_numeric=True, multi_output=True)

File "/home/tarun007/anaconda3/lib/python3.7/site-packages/sklearn/utils/validation.py", line 756, in check_X_y
 estimator=estimator)

File "/home/tarun007/anaconda3/lib/python3.7/site-packages/sklearn/utils/validation.py", line 552, in check_array
 "if it contains a single sample.".format(array))

ValueError: Expected 2D array, got 1D array instead:
array=[ 2.9  5.1  3.2  4.5  8.2  6.8  1.3 10.5  3.   2.2  5.9  6.   3.7  3.2
  9.   2.   1.1  7.1  4.9  4. ].
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.

标签: python-3.xmachine-learningscikit-learnlinear-regression

解决方案


推荐阅读