在Logistic回归中将连续数据转换为分类数据时出错

问题描述 投票:0回答:1

我正在对数据集使用Logistic回归,其目标变量为0s和1s。我使用了.replace()函数,并相应地替换了它们。

> data['target']=data['target'].replace({0:"No",1:"yes"})

代码运行正常。但是当我对数据建模时,

model_log=sm.Logit(data['target'],data.iloc[:,2:]).fit()

它显示以下错误:

ValueError:将熊猫数据转换为对象的numpy dtype。检查输入np.asarray(data)获得数据。

casting data-science logistic-regression modeling
1个回答
0
投票

当您使用iloc选择X数据时,它返回一个熊猫数据框。According to statsmodel documentation,登录时期望X和y为array_like。您需要将数据帧转换为所需的数据类型。可以使用to_numpy方法将数据帧转换为numpy数组。

model_log=sm.Logit(data['target'].astype(float),data.iloc[:,2:].to_numpy()).fit()
© www.soinside.com 2019 - 2024. All rights reserved.