如何修复 python 中的 sklearn 多元线性回归 ValueError(样本数量不一致:[2, 1])



我的线性回归与单个特征完美配合。自从尝试使用两个以来,我收到以下错误:值错误:发现样本数量不一致的输入变量:[2,1]

第一个打印语句正在打印以下内容:(2, 6497)(1, 6497)

然后代码在train_test_split阶段崩溃。

有什么想法吗?

feat_scores = {}
X = df[['alcohol','density']].values.reshape(2,-1)   
y = df['quality'].values.reshape(1,-1)
print (X.shape, y.shape)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
print (X_train.shape, y_train.shape)
print (X_test.shape, y_test.shape)
reg = LinearRegression()
reg.fit(X_train, y_train)
reg.predict(y_train)

你错过了这一行

X = df[['alcohol','density']].values.reshape(2,-1)   
y = df['quality'].values.reshape(1,-1)
不要将数据重塑为 (2, 6497) (1, 6497

),而是必须将其指定为 (6497,2) (6497,)

Sklearn直接获取数据帧/系列。 所以你可以给,

X = df[['alcohol','density']]
y = df['quality']

此外,您只能使用 X 值进行预测,因此

reg.predict(X_train)

reg.predict(X_test)

相关内容

  • 没有找到相关文章

最新更新