statsmodels汇总到乳胶

2022-01-24 00:00:00 python statsmodels latex

问题描述

我是 latex 新手,我想将 statsmodels(python-package) 摘要导入到我的乳胶报告.我发现可以使用以下方法将摘要转换为乳胶表格:latex_as_tabular.到目前为止,一切正常.现在我必须存储表格,但我不太明白它是如何工作的.

I'm a newbie to latex and I want to import a statsmodels(python-package) summary to my report in latex. I found that it's possible to transform a summary into a latex tabular with the following method: latex_as_tabular. Until now everything is working. Now I have to store the tabular, but I don't really understand how this works.

我想我必须使用以下命令:

I suppose I have to use the following commands:

x_values=sm.add_constant(x_values)
model=sm.OLS(y_values, x_values)
results=model.fit()
tbl=results.summary(xname=['b,'a'],yname='y')
with open('c:/temp/temp.tex','w') as fh:
    fh.write( tbl.as_latex_tabular() )

此代码直到现在才起作用.大多数情况下,控制台都会给出错误:tex-file does not exist or not allowed in this map.我真的不明白我必须在这里做什么.有人可以帮我吗?

this code doesn't work until now. most of the times the console gives the error: tex-file doesn't exists or not permitted in this map. I don't really understand what I have to do here. Could someone please help me with this ?


解决方案

这好像是个误会.您可以通过 summary.as_latex() 或通过调用 table.as_latex_tabular().

That seems to be a misunderstanding. You can either convert a whole summary into latex via summary.as_latex() or convert its tables one by one by calling table.as_latex_tabular() for each table.

以下示例代码取自 statsmodels 文档.请注意,您不能在 summary 对象上调用 as_latex_tabular.

The following example code is taken from statsmodels documentation. Note that you cannot call as_latex_tabular on a summary object.

import numpy as np
import statsmodels.api as sm

nsample = 100
x = np.linspace(0, 10, 100)
X = np.column_stack((x, x**2))
beta = np.array([1, 0.1, 10])
e = np.random.normal(size=nsample)

X = sm.add_constant(X)
y = np.dot(X, beta) + e

model = sm.OLS(y, X)
results = model.fit()

# do either
print(results.summary().as_latex())

# alternatively
for table in results.summary().tables:
    print(table.as_latex_tabular())

相关文章