outreg2 命令是 Stata 中一款功能强大的输出回归结果工具,主要用于将回归分析的结果以规范的格式导出到表格中,便于学术论文写作和报告展示,该命令由 Ben Jann 开发,是对原有 outreg 命令的升级版本,提供了更丰富的自定义选项和更灵活的输出格式,尤其在经济学、社会学等领域的实证研究中应用广泛,以下从功能特点、基本语法、常用选项、实际应用场景及注意事项等方面对 outreg2 命令进行详细说明。

outreg2 命令的核心功能与优势
outreg2 命令的核心价值在于将 Stata 的回归结果转化为可直接插入 Word、LaTeX 等文档的表格,解决了手动整理回归结果效率低、易出错的问题,其优势主要体现在以下几个方面:
- 多模型对比:支持同时输出多个回归模型的结果,便于在同一表格中展示不同设定(如添加控制变量、更换子样本等)下的系数变化。
- 格式自定义:可调整系数显示的小数位数、星号标注显著性水平、添加变量标签、调整表格标题等,满足不同期刊或机构的格式要求。
- 多格式输出:支持输出为 .rtf、.tex、.html、.csv 等格式,兼容 Word、LaTeX 等主流文档编辑工具。
- 统计量扩展:除常规的系数、标准误外,还可输出 R²、观测值数量、组数、F 统计量等,并支持自定义添加统计量(如 t 统计量、p 值)。
基本语法与常用选项
outreg2 命令的基本语法结构为:
outreg2 [varlist] using filename [, options]
varlist 为可选参数,指定需要输出的变量(默认输出所有回归变量);using filename 为必选参数,指定输出文件的名称(无需加扩展名,通过选项指定格式);options 为控制输出格式的选项,以下是常用选项的分类说明:
控制选项
bdec(#):设置系数的小数位数,默认为 3(如bdec(2)显示两位小数)。sedec(#):设置标准误的小数位数,默认为 3。star(#):定义显著性水平的星号标注,默认为star(0.05 0.01 0.001),即 p<0.05、p<0.01、p<0.001。cttop:仅输出第一个模型的系数和统计量,后续模型仅输出系数变化(适用于多模型对比时突出核心变量)。nocons:不输出常数项(截距项)。addtext(varname label):在表格下方添加自定义文本,如addtext("样本量" e(N))可显示观测值数量。
表格格式与输出选项
replace:覆盖已存在的同名输出文件(首次使用时无需添加,后续修改需手动覆盖)。rtf:输出为 .rtf 格式(可直接插入 Word)。tex:输出为 .tex 格式(需配合 LaTeX 的booktabs宏包使用)。 "表格标题")`**:添加表格标题。subtitle("副标题"):添加副标题。note("注释内容"):在表格下方添加注释(如数据来源、显著性说明)。
统计量输出选项
stats(N r2_a F):指定输出的统计量,N为观测值,r2_a为调整后 R²,F为 F 统计量;可自定义添加统计量,如stats(N r2_a bic)。keep(varlist):仅保留varlist中的变量输出(如keep(X1 X2 X3)仅输出这三个变量的结果)。drop(varlist):排除varlist中的变量(如drop(controls)不输出控制变量)。
实际应用示例
假设我们进行了两个 OLS 回归模型,分析教育年限(edu)对工资(wage)的影响,其中模型 1 仅包含核心变量,模型 2 添加了控制变量(experience、urban),现使用 outreg2 输出结果。

基础回归
reg wage edu, robust reg wage edu experience urban, robust
输出 Word 兼容的表格(.rtf 格式)
outreg2 using result.rtf, replace bdec(2) sedec(2) star(0.05 0.01 0.001) ///"教育对工资的影响") subtitle("OLS 回归结果") ///
stats(N r2_a F) note("数据来源:2020年家庭调查数据;***p<0.01, **p<0.05, *p<0.1") ///
noctop
输出 LaTeX 表格
outreg2 using result.tex, replace tex bdec(2) sedec(2) star(0.05 0.01 0.001) ///
stats(N r2_a) keep(edu experience urban) ///教育对工资的影响} note{标准误为异方差稳健标准误}
执行上述命令后,Stata 会生成 result.rtf 和 result.tex 文件,直接插入 Word 或 LaTeX 即可得到规范的回归结果表格,以 .rtf 格式为例,表格大致如下(简化展示):
| 变量 | 模型1 | 模型2 |
|---|---|---|
| 教育年限 | 12** | 10* |
| (0.04) | (0.05) | |
| 工作经验 | 03** | |
| (0.01) | ||
| 城市虚拟变量 | 15*** | |
| (0.04) | ||
| 常数项 | 20* | 85 |
| (0.50) | (0.60) | |
| 观测值 | 1000 | 1000 |
| 调整后 R² | 05 | 12 |
| F 统计量 | 50** | 20*** |
| 注释 | p<0.01, p<0.05, p<0.1 | 数据来源:2020年家庭调查数据 |
高级应用技巧
- 多模型合并输出:若需对比不同估计方法(如 OLS 与 IV 回归),可连续运行回归后使用一次 outreg2 命令:
ivregress 2sls wage (edu = sibling) experience urban, robust outreg2 using result.rtf, replace bdec(2) se(2) stats(N r2_a)
- 自定义变量标签:若变量名无标签,可通过
label variable添加标签,outreg2 会自动读取标签显示:label variable edu "教育年限(年)" label variable wage "小时工资(元)"
- 分样本回归对比:使用
if条件分样本回归后,通过addtext区分子样本:reg wage edu if urban == 1, robust reg wage edu if urban == 0, robust outreg2 using result.rtf, replace bdec(2) addtext("子样本" "城市" "农村")
注意事项
- 文件路径问题:若未指定完整路径,输出文件默认保存在 Stata 的工作目录(可通过
pwd查看路径)。 - 命令安装:首次使用需安装 outreg2,命令为
ssc install outreg2(需联网)。 - 格式兼容性:输出 .rtf 文件时,建议使用 Word 2007 及以上版本;输出 .tex 文件需确保 LaTeX 环境正确配置
booktabs宏包。 - 统计量名称:自定义统计量时,需确保 Stata 已存储该统计量(如
e(N)为观测值,e(r2_a)为调整后 R²)。
相关问答 FAQs
问题 1:outreg2 输出的表格中,如何将标准误放在系数下方并添加括号?
解答:默认情况下,outreg2 会将标准误显示在系数右侧的括号内,若需将标准误置于系数下方并添加括号,可使用 paren 选项:
outreg2 using result.rtf, replace bdec(2) se(2) paren
此时表格格式会变为:
| 变量 | 系数 |
|--------|--------|
| 教育年限 | 0.12 |
| | (0.04) |
问题 2:如何在 outreg2 输出的表格中添加自定义行(如“固定效应”或“工具变量”)?
解答:可通过 addrows() 选项添加自定义行,

outreg2 using result.tex, replace tex addrows("模型设定", "固定效应", "否", "是") ///
addrows("工具变量", "—", "sibling")
此命令会在表格中添加两行“模型设定”和“工具变量”,分别对应模型的固定效应和工具变量信息,适用于展示模型细节。
