Stargazer库介绍R语言有一个stargazer包,可用于创建漂亮的、可发表的多元回归表。如今有Python化的stargazer库也可做类似的事。 下图是使用stargazer生成的没有任何样式的原始示例的示例: ![](http://image109.360doc.com/DownloadImg/2022/01/0408/237198909_2_20220104085202302_wm)
什么时候会用到这些?人们倾向于使用R版本的stargazer的主要情况是在学术论文中报告回归结果。 它允许您轻松地比较多个回归结果,这有助于比较具有实验影响的模型与没有影响的模型之间的结果。 这允许用户轻松查看系数的差异、统计显着性以及实验引入的新变量的影响。 它目前支持 LaTeX 和 HTML 输出,stargazer开发者最终最表是也支持 Markdown 和 ASCII 文本。
项目地址https://github.com/mwburke/stargazer 该库实现了原始包中的许多自定义功能。大多数示例可以在示例 jupyter notebook 中找到,功能函数完整列表如下:Stargazer库的函数- show_model_numbers:显示或隐藏型号
- custom_columns:自定义模型名称和模型分组
- significance_levels:更改统计显着性阈值
- significant_digits:更改有效数字的数量
- show_confidence_intervals:显示置信区间,而不是方差
- dependent_variable_name:重命名因变量
- rename_covariates: 重命名协变量
- reset_covariate_order:将协变量顺序重置为原始顺序
- show_degrees_of_freedom:显示或隐藏自由度
- custom_note_label:表格底部的标签注释部分
- add_custom_notes:将自定义注释添加到表格底部的部分
- append_notes:显示或隐藏统计显着性阈值
这些功能与渲染类型无关,无论用户以 HTML、LaTeX 等格式输出都将应用 安装!pip3 install stargazer
OLS回归import pandas as pd from sklearn import datasets import statsmodels.api as sm from stargazer.stargazer import Stargazer
diabetes = datasets.load_diabetes() df = pd.DataFrame(diabetes.data) df.columns = ['Age', 'Sex', 'BMI', 'ABP', 'S1', 'S2', 'S3', 'S4', 'S5', 'S6'] df['target'] = diabetes.target
est = sm.OLS(endog=df['target'], exog=sm.add_constant(df[df.columns[0:4]])).fit() est2 = sm.OLS(endog=df['target'], exog=sm.add_constant(df[df.columns[0:6]])).fit()
stargazer = Stargazer([est, est2])
分析结果渲染成html from IPython.display import display, HTML raw_str = stargazer.render_html() html = HTML(raw_str) display(html)
![](http://image109.360doc.com/DownloadImg/2022/01/0408/237198909_3_20220104085202458_wm)
分析结果渲染成latex
stargazer.render_latex()
![](http://image109.360doc.com/DownloadImg/2022/01/0408/237198909_2_20220104085202302_wm)
|