Joe*_*Joe 2 python machine-learning python-3.x statsmodels logistic-regression
我正在使用sm.Logit在 python 中进行逻辑回归,然后获取模型、p 值等是函数.summary ,我想存储.summary函数的结果,到目前为止我有:
我仍然需要获取std err、z和p 值
我还想知道是否有办法得到这个(.summary函数的第一部分):
如果您使用如下代码计算模型
model = sm.Logit(y_data, x_data)
model_fit = model.fit()
Run Code Online (Sandbox Code Playgroud)
那么您可以直接使用 访问 p 值model_fit.pvalues
。
对于系数的标准误差,您可以调用
cov = model_fit.cov_params()
std_err = np.sqrt(np.diag(cov))
Run Code Online (Sandbox Code Playgroud)
将标准误差计算为模型协方差矩阵估计的方差项(对角线项)的平方根。
z 值定义为每个系数除以其标准误差,因此您可以将其计算为
z_values = model_fit.params / std_err
Run Code Online (Sandbox Code Playgroud)
使用std_err
上面一行中定义的。
关于您的最后一个问题,目前尚不清楚您是在询问如何从输出中获取实际的子字符串summary()
,还是单独获取它打印的所有不同数据片段。
如果您需要单独使用它们,我建议您将模型放入具有制表符完成功能的交互式编程会话中,例如使用 jupyter,以便您可以看到对象上可用的各种自由度选项和其他数据model_fit
。
如果您只是寻找字符串,那么很简单:
'\n'.join(str(model_fit.summary()).split('\n')[1:10])
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12461 次 |
最近记录: |