我正在使用http://myowelt.blogspot.com/2008/04/beautiful-correlation-tables-in-r.html
生成相关表但是,在将文件输出到可用的LaTex文件或文本文件时,我没有成功。
我使用sink()
将数据保存到文本文件是不成功的。
假设我使用以下命令:
corstarsl(lpp_axis1)
如何将输出传输到文本文件?我已经阅读了关于接收器的文档,我在某个地方错过了一步。 (我打开连接,执行命令,取消链接文件,然后什么也没找到。)
我也尝试在tex文件中使用xtable(cortstarsl(lpp_axis1))
的输出但是我收到了“找不到元素表的错误。我不太了解Tex来跟踪问题的根源。
输出此数据的建议? 有关创建关联表的其他建议吗?
答案 0 :(得分:5)
使用您链接到的网页中的代码,我得到(使用内置的airquality
数据):
> require(Hmisc)
> require(xtable)
> xtable(corstarsl(airquality))
% latex table generated in R 2.12.1 by xtable 1.5-6 package
% Mon Feb 21 20:00:34 2011
\begin{table}[ht]
\begin{center}
\begin{tabular}{rlllll}
\hline
& ozone & solar.r & wind & temp & month \\
\hline
ozone & & & & & \\
solar.r & 0.35*** & & & & \\
wind & -0.60*** & -0.06 & & & \\
temp & 0.70*** & 0.28*** & -0.46*** & & \\
month & 0.16 & -0.08 & -0.18* & 0.42*** & \\
day & -0.01 & -0.15 & 0.03 & -0.13 & -0.01 \\
\hline
\end{tabular}
\end{center}
\end{table}
那么问题是如何将此TeX输出转换为文件。这里capture.output()
是一位朋友:
> capture.output(xtable(corstarsl(airquality)), file = "mytable.tex")
将代码输出到名为mytable.tex
的文件:
$ cat mytable.tex
% latex table generated in R 2.12.1 by xtable 1.5-6 package
% Mon Feb 21 20:01:03 2011
\begin{table}[ht]
\begin{center}
\begin{tabular}{rlllll}
\hline
& ozone & solar.r & wind & temp & month \\
\hline
ozone & & & & & \\
solar.r & 0.35*** & & & & \\
wind & -0.60*** & -0.06 & & & \\
temp & 0.70*** & 0.28*** & -0.46*** & & \\
month & 0.16 & -0.08 & -0.18* & 0.42*** & \\
day & -0.01 & -0.15 & 0.03 & -0.13 & -0.01 \\
\hline
\end{tabular}
\ end{center}
\end{table}
对于“普通”分隔文本输出,可能要转储到文字处理程序或电子表格中,请尝试write.table()
,例如:
> write.table(corstarsl(airquality), file = "mytable2.txt")
这会产生如下文件:
$ cat mytable2.txt
"ozone" "solar.r" "wind" "temp" "month"
"ozone" "" "" "" "" ""
"solar.r" " 0.35***" "" "" "" ""
"wind" "-0.60***" "-0.06 " "" "" ""
"temp" " 0.70***" " 0.28***" "-0.46***" "" ""
"month" " 0.16 " "-0.08 " "-0.18* " " 0.42***" ""
"day" "-0.01 " "-0.15 " " 0.03 " "-0.13 " "-0.01 "
您可以根据自己的内容更改引用和分隔符 - 请参阅?write.table
。