在Python中模型输出到\u excel?

2024-10-03 19:20:31 发布

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

运行MixedLM并希望将输出推送到Excel或CSV,请参阅下面的模型代码和输出:

model = smf.mixedlm('y_var ~ gas_prices', dfModel, 
                 groups = dfModel['region'])
mdf = model.fit()
print(mdf.summary())

                Mixed Linear Model Regression Results
======================================================================
Model:                MixedLM   Dependent Variable:   yVar 
No. Observations:     420       Method:               REML            
No. Groups:           4         Scale:                45635645671.2271
Min. group size:      105       Likelihood:           -5720.8133      
Max. group size:      105       Converged:            Yes             
Mean group size:      105.0                                           
----------------------------------------------------------------------
              Coef.     Std.Err.    z    P>|z|    [0.025      0.975]  
----------------------------------------------------------------------
Intercept  3241461.947 112718.823 28.757 0.000 3020537.112 3462386.781
gas_prices -118128.471  46931.809 -2.517 0.012 -210113.126  -26143.816
xVar2          275.017    165.072  1.666 0.096     -48.518     598.553
groups RE        0.002                                                
======================================================================

我尝试过推送mdf.summary().to_excel,但没用,除了用mdf.summary()创建Pandas数据框,然后再推到Excel,也没用。在

这里的额外优点是为Excel中的每个输出创建一个唯一的文件名,这样如果我运行一些模型,它们就不会互相覆盖。在

我怎样才能把这个放到Excel上?在


Tags: csvno模型sizemodelgroupsummaryexcel
1条回答
网友
1楼 · 发布于 2024-10-03 19:20:31

statsmodels有两个用于构建汇总表的底层函数。有些模型使用其中一种方法,有些模型在结果实例中同时使用summary()和{}方法。在

MixedLM使用summary2作为summary,它将底层表构建为pandas数据帧。在

我现在没有一个混合效果模型,所以这是一个GLM模型结果实例res1

>>> summ2 = res1.summary2()
>>> len(summ2.tables)
2

>>> type(summ2.tables[1])
pandas.core.frame.DataFrame

>>> type(summ2.tables[0])
pandas.core.frame.DataFrame

这两个表可以和pandas一起使用,就像删除的答案一样,创建excel文件。在

summary实现在MixedLM中不可用,但它是大多数其他模型的默认摘要,它有一个as_csv方法,但是它使用与字符串版本中相同的精度。summary版本当前未构建底层数据帧。在

^{pr2}$

(欢迎在statsmodels摘要中请求附加选项。)

相关问题 更多 >