【发布时间】:2018-12-06 09:01:16
【问题描述】:
当我尝试训练模型时,我对尝试使用 sklearn 运行线性回归的 python 真的很陌生:
regressIt.fit(X_train, Y_train)
它会抛出以下异常:
ValueError: Found array with 0 sample(s) (shape=(0, 546)) while a minimum of 1 is required.
我做错了什么?
提前致谢。
【问题讨论】:
-
你有一个没有行和 546 列的二维数组,所以它基本上是空的。您需要包含重现此错误的完整代码和原始数据
-
谢谢,这是我目前所拥有的。 import numpy as np import pandas as pd from sklearn import datasets, linear_model #获取数据 colNames = ['price', 'lotsize'] df = pd.read_csv("Housing.csv") Y = df.price.tolist() X = df.lotsize.tolist() #reshape it X=np.array(X).reshape((1,-1)) Y=np.array(Y).reshape((1,-1)) #training /testing sets X_train = X[:-250] X_test = X[-250:] # 创建线性回归对象 regressIt = linear_model.LinearRegression() # 训练模型 regressIt.fit(X_train, Y_train) #显示它 print( str(轮(regressIt.predict(Y))))
-
将您的代码编辑到您的问题中并格式化代码
-
添加数据和完整代码
-
import numpy as np import pandas as pd from sklearn import datasets, linear_model #获取数据 colNames = ['price', 'lotsize'] df = pd.read_csv("Housing.csv ") Y = df.price.tolist() X = df.lotsize.tolist() #重塑它 X=np.array(X).reshape((1,-1)) Y=np.array(Y)。 reshape((1,-1)) #training/testing sets X_train = X[:-250] X_test = X[-250:] Y_train = X[:-250] Y_test = Y[:-250] # 创建线性回归object regressIt = linear_model.LinearRegression() # 训练模型 regressIt.fit(X_train, Y_train) #显示它 print( str(round(regressIt.predict(Y))) )