You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

sklearn调用LinearRegression取系数触发numpy.float64无len()报错如何解决

报错原因
  • 你当前使用LinearRegression执行的是单输出回归任务,目标变量y为一维的pandas Series,这种场景下训练完成后,模型的coef_属性本身就是一维numpy数组,形状为(输入特征总数,),不存在第二维度。
  • 代码中model.coef_[0]实际获取的是第一个输入特征对应的回归系数值,属于numpy.float64类型的标量,本身没有长度属性,调用len()就会抛出对应报错。
  • 你的输入特征X_train为csr稀疏矩阵,不会影响coef_的输出结构,和本次报错无关。
修复代码

如果要统计所有回归系数的总数量,用以下代码替换原打印逻辑即可:

print(f"There are {len(model.coef_)} regression coefficients:")
print(model.coef_)

如果仅需要获取第一列(第一个特征)对应的回归系数值,不需要调用len(),直接输出即可:

print(f"第一个特征对应的回归系数为:{model.coef_[0]}")

内容的提问来源于stack exchange,提问作者melololo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:54:02