python做线性回归中出错type error_关于python:在SciKit线性回归上获取’ValueError:形状未对齐’...

通常,对于使用Python的SciKit和线性代数/机器学习来说,这是相当新的,所以我似乎无法解决以下问题:

我有一个训练集和一个数据测试集,其中包含连续值和离散/分类值。 CSV文件被加载到Pandas DataFrames中,并且形状匹配,分别为(1460,81)和(1459,81)。

但是,在使用Pandas的get_dummies之后,DataFrame的形状将更改为(1460,306)和(1459,294)。 因此,当我使用SciKit线性回归模块进行线性回归时,它会为306个变量建立模型,并尝试仅使用294个变量来预测一个变量。 那么,这自然会导致以下错误:

ValueError: shapes (1459,294) and (306,1) not aligned: 294 (dim 1) != 306 (dim 0)

我该如何解决这个问题? 我能以某种方式重塑(1459,294)以匹配另一个吗?

谢谢,我希望我已经说清楚了:)

在处理分类数据时,这是一个非常普遍的问题。关于如何最好地处理此问题,存在不同的意见。

一种可能的方法是将一个功能应用于分类特征,以限制可能的选项集。例如,如果要素包含字母,则可以对A,B,C,D和"其他/未知"要素进行编码。这样,您可以在测试时应用相同的功能并从问题中抽象出来。当然,显而易见的缺点是,通过减少功能空间,您可能会丢失有意义的信息。

另一种方法是在您的训练数据上建立模型,自然而然地创建任何假人,并将其作为模型的基准。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值