首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >多项logistic回归的Scikit-learn Bad输入形状误差

多项logistic回归的Scikit-learn Bad输入形状误差
EN

Stack Overflow用户
提问于 2015-12-01 03:31:22
回答 1查看 5.9K关注 0票数 2

我正在使用Scikit-learn在Python中实现一个多项logistic回归模型。这是我的密码:

代码语言:javascript
运行
复制
X = pd.concat([each for each in feature_cols], axis=1)
y = train[["<5", "5-6", "6-7", "7-8", "8-9", "9-10"]]
lm = LogisticRegression(multi_class='multinomial', solver='lbfgs')
lm.fit(X, y)

但是,当ValueError: bad input shape (50184, 6)试图执行最后一行代码时,我会得到它。

X是一个有50184行7列的DataFramey还有50184行,但有6列。

我最终想要预测的是什么(<5,5-6,等等)结果就落空了。本例中使用的所有自变量和因变量都是虚拟列,其二进制值为0或1。我遗漏了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-01 04:10:33

Logistic回归三级分类器示例说明了LogisticRegression是如何使用向量而不是矩阵输入的,在本例中是iris数据集的target变量,编码为值[0, 1, 2]

要将虚拟矩阵转换为一个系列,您可以用不同的整数乘每一列,然后--假设它是pandas.DataFrame --只需对结果调用.sum(axis=1)。类似于:

代码语言:javascript
运行
复制
for i, col in enumerate(y.columns.tolist(), 1):
    y.loc[:, col] *= i
y = y.sum(axis=1)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34012100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档