【问题标题】:ValueError in sklearn: shapes not alignedsklearn中的ValueError:形状未对齐
【发布时间】:2020-02-19 19:47:58
【问题描述】:

我正在尝试返回我通过我的程序运行的测试分数,但无论我尝试什么,我都会不断收到错误

ValueError                                Traceback (most recent call last)
<ipython-input-19-4b49cb58c813> in <module>()
----> 1 print(model_final.score(X_train, y_train))
      2 print(model_final.score(X_test, y_test))

3 frames
/usr/local/lib/python3.6/dist-packages/sklearn/utils/extmath.py in safe_sparse_dot(a, b, dense_output)
    140         return ret
    141     else:
--> 142         return np.dot(a, b)
    143 
    144 

ValueError: shapes (353,10) and (172,) not aligned: 10 (dim 1) != 172 (dim 0)

完整代码可以在here找到。

任何帮助将不胜感激,并提前感谢您。

【问题讨论】:

  • 它对你有用吗?

标签: python scikit-learn regression


【解决方案1】:

问题出在一行

model_final = model

此语句不会创建model 的副本,它只会创建shallow copy,因此当您更改model 时,即使model_final 也会更改。为避免这种情况,您需要使用deepcopy as

from copy import deepcopy
model_final = deepcopy(model)

这将执行deep copy,并且您对model 所做的任何更改都不会影响model_final

希望这会有所帮助!

【讨论】:

  • 现在试试这个。
  • 效果很好!感谢您的帮助!
猜你喜欢
  • 2016-05-04
  • 2022-12-07
  • 1970-01-01
  • 2019-06-03
  • 2018-03-06
  • 1970-01-01
  • 2018-08-09
  • 1970-01-01
  • 2014-12-01
相关资源
最近更新 更多