用statsmod从Python中的GLM提取系数

2024-09-28 03:15:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个模型,定义如下:

import statsmodels.formula.api as smf
model = smf.glm(formula="A ~ B + C + D", data=data, family=sm.families.Poisson()).fit()

该模型具有如下系数:

Intercept   0.319813
C[T.foo]   -1.058058
C[T.bar]   -0.749859
D[T.foo]    0.217136
D[T.bar]    0.404791
B           0.262614

我可以通过做model.params.Interceptmodel.params.B来获取InterceptB的值,但是我不能得到每个CD的值。

例如,我试过model.params.C[T.foo],但我得到并出错了。

如何从模型中获取特定值?


Tags: 模型importapidatamodel定义fooas
1条回答
网友
1楼 · 发布于 2024-09-28 03:15:35

model.params是熊猫系列。只有当条目的名称是有效的python名称时,才能访问as属性。

在这种情况下,您需要使用引号中的名称进行索引,即model.params["C[T.foo]"]

http://pandas.pydata.org/pandas-docs/dev/indexing.html

相关问题 更多 >

    热门问题