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

如何使用statsmodels.formula.api的logit实现样本内预测

statsmodels logit模型样本内预测正确用法

错误核心原因

你的两次报错是两个基础使用错误导致的:

  1. 仅完成了模型实例化,没有执行拟合步骤获取模型参数
  2. predict方法的params参数使用逻辑完全错误,该参数用于传入已经拟合好的数值型系数数组,不能传入变量名或公式字符串

正确实现代码

import statsmodels.formula.api as smf

# 初始化logit模型
model_logit = smf.logit(formula="dep ~ var1 + var2 + var3", data=model_data)
# 拟合模型得到参数,该步骤为必填项,否则没有可用于预测的计算依据
result_logit = model_logit.fit()
# 样本内预测:不传任何参数时,默认直接使用训练数据集做预测
yhat_in_sample = result_logit.predict()

如果需要显式指定用训练集预测,也可以手动传入训练数据:

yhat_in_sample = result_logit.predict(data=model_data)

原代码报错说明

  • 第一段代码报错:你给params参数传入了字符串列表,和该参数要求的数值型系数数组类型不匹配,触发数值计算类错误
  • 第二段代码报错:你给params参数传入了公式字符串,底层计算时尝试用字符串执行乘法运算,直接触发numpy的运算类型不匹配错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 10:15:08