2012-01-16 105 views
0

有點尷尬的問題 - 我不敢相信我在努力弄清楚這一點:打印apsrtable輸出到文件?

如何將apsrtable的輸出打印到文件?我期待這個工作:

library(apsrtable) 
df <- data.frame(x=1:10, y=(1:10)+rnorm(10)) 
model1 <- lm(y ~ x, data=df) 
model2 <- lm(y ~ x + I(x^2), data=df) 
print(apsrtable(model1, model2), file="models.tex") 

...但很可惜,好像apsrtable不拿出一個print.apsrtable功能(xtable的方式帶有print.xtable)。

什麼是從apsrtable輸出自動創建.tex文件的正確方法?

謝謝你在前進,

阿德里安

+0

'print.xtable'是一個非標準的方法,如果它寫入文件。大多數'print'方法轉儲到控制檯。您可以嘗試'write.table(apsrtable([blahblah]),file =「models.tex」)',但要警告它不會創建一個TeX格式化的表格,如果這就是你以後的樣子。 (據我所知:-)) – 2012-01-16 20:09:10

回答

1

後寫我的評論,我居然擡頭手冊:d,發現了以下內容: (從手冊apsrtable)

價值 包含乳膠代碼行的字符向量。可以使用writeLines通過\ input {}在latex文檔中寫入。

聽起來像是你想要什麼,然後,是

% writeLines(apsrtable([blahblah]),file="models.tex") 

還是什麼密切近似於。

+0

謝謝!以防萬一其他人讀這個:writeLines(apsrtable(model1,model2),file(「models.tex」))將做到這一點。我喜歡xtable讓你使用print()來「打印到文件」的方式,我發現比writeLines()更容易記住! – Adrian 2012-01-16 21:13:41

0

一個簡單的解決方案就是使用cat()。以下對我有用:

cat(apsrtable(...), file = "model.tex")