从stargazer回归表输出中省略浮动和文档环境

时间:2014-01-16 11:07:30

标签: r stargazer

我刚开始使用stargazer包在R中制作回归表,但无法弄清楚如何将表输出写入.tex文件而不用浮动或文档环境(以及文件环境中的序言)。也就是说,我只想要表格环境。我的工作流程是将表格浮动环境 - 以及相关的标题和标签 - 保留在论文正文中,并使用\input{}链接到表格的表格环境。

这可能吗?

# bogus data
my.data <- data.frame(y = rnorm(10), x = rnorm(10))
my.lm <- lm(y ~ x, data=my.data)

# if I write to file, then I can omit the floating environment,
# but not the document environment
# (i.e., file contains `\documentclass{article}` etc.)
stargazer(my.lm, float=FALSE, out="option_one.tex")

# if I write to a text connection with `sink`,
# then I can omit both floating and document environments, 
# but not commands
# (i.e., log contains `sink` and `stargazer` commands)
con <- file("option_two.tex")
sink(con)
stargazer(my.lm, float=FALSE)
sink()

1 个答案:

答案 0 :(得分:4)

将观星结果保存到对象:

res <- stargazer(my.lm, float=FALSE)

如果您查看res的内容,那么您会看到它只是一系列文字。使用cat()像这样将文件写入文件

cat(res, file="tab_results.tex", sep="\n")

仅需要sep="\n",因为res对象中的文本行不包含任何换行符。如果我们使用默认的sep=" ",那么您的表将作为一条长行写入tex文件。

希望这有帮助。