首页 > 解决方案 > ValueError:形状(882,14)和(15,)未对齐:14(dim 1)!= 15(dim 0)

问题描述

无法解决错误,请指教代码:

训练模型

X_train_stepwise = X_train[['Schooling', 'Adult Mortality', 
'HIV/AIDS', 'Diphtheria', 'BMI', 'Income composition of resources', 
'Status', 'percentage expenditure', 'Polio', 'Measles', 'Hepatitis B', 
'under-five deaths', 'infant deaths', 'thinness  1-19 years']]

添加一个常量变量并构建第二个拟合模型

X_train_stepwise = sm.add_constant(X_train_stepwise)
lm_stepwise = sm.OLS(y_train, X_train_stepwise).fit()

线性模型总结

 print(lm_stepwise.summary())

预测训练集的价格。

X_test_stepwise = X_test[['Schooling', 'Adult Mortality', 'HIV/AIDS', 
   'Diphtheria', 'BMI', 'Income composition of resources', 'Status', 
   'percentage expenditure', 'Polio', 'Measles', 'Hepatitis B', 
   'under-five deaths', 'infant deaths', 'thinness  1-19 years']]

# X_test_sm = sm.add_constant(X_test_stepwise)


actual = y_test["Life expectancy"]


prediction = lm_stepwise.predict(X_test_stepwise)

标签: pythonmachine-learningdata-science

解决方案


在矩阵乘法中,第二个矩阵的行数应该等于第一个矩阵的列数。在笔记本中单独执行每一列,以检查导致问题的矩阵。


推荐阅读