我正在尝试将输出从R写入Latex。我希望从R:
获得格式良好的表格当我使用Hmisc包中的latex()函数时,我得到了这个:
如何转换表格,使其成为2x6而不是6x2?我知道在latex()函数中必须存在一些参数,但我无法弄明白。
答案 0 :(得分:2)
Summary返回一个奇怪的字符串,在我看来简直就是丑陋。这是在表格中获得类似摘要输出的替代方法:
summ <- function(x){
tmp<-quantile(x, c(0,.25,.5,.75,1))
names(tmp)<-c("Min", "1st Qu.", "Median", "3rd Qu.", "Max")
return(tmp)}
使用函数返回更灵活的data.frame:
t(sapply(swiss, summ) )
Min 1st Qu. Median 3rd Qu. Max
Fertility 35.00 64.700 70.40 78.450 92.5
Agriculture 1.20 35.900 54.10 67.650 89.7
Examination 3.00 12.000 16.00 22.000 37.0
Education 1.00 6.000 8.00 12.000 53.0
Catholic 2.15 5.195 15.14 93.125 100.0
Infant.Mortality 10.80 18.150 20.00 21.700 26.6
使用上面的@pachamaltese答案,最终的汇总表应该没有表格中的不必要的Min. :
。
答案 1 :(得分:1)
你应该提供一个MWE:)
我做的是这个
setwd("/myfolder")
library(Hmisc)
table <- summary(swiss)
table_transpose <- t(table)
latex(table)
latex(table_transpose)
“t”表示转置,它适用于矩阵或表格
运行latex()
后,R保存了两个我必须粘贴到具有合适结构的文件中的.tex文件,否则将无法编译。
这是最终的.tex
\documentclass[12pt,letterpaper,landscape]{article}
\leftmargin=0.25in
\oddsidemargin=0.25in
\textwidth=6.0in
\topmargin=-0.9in
\textheight=9.25in
\usepackage[margin=1in]{geometry}
\begin{document}
\begin{table}[!tbp]
\begin{center}
\begin{tabular}{lllllll}
\hline\hline
\multicolumn{1}{l}{table}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}\tabularnewline
\hline
Fertility&Min. :35.00 &1st Qu.:64.70 &Median :70.40 &Mean :70.14 &3rd Qu.:78.45 &Max. :92.50 \tabularnewline
Agriculture&Min. : 1.20 &1st Qu.:35.90 &Median :54.10 &Mean :50.66 &3rd Qu.:67.65 &Max. :89.70 \tabularnewline
Examination&Min. : 3.00 &1st Qu.:12.00 &Median :16.00 &Mean :16.49 &3rd Qu.:22.00 &Max. :37.00 \tabularnewline
Education&Min. : 1.00 &1st Qu.: 6.00 &Median : 8.00 &Mean :10.98 &3rd Qu.:12.00 &Max. :53.00 \tabularnewline
Catholic&Min. : 2.150 &1st Qu.: 5.195 &Median : 15.140 &Mean : 41.144 &3rd Qu.: 93.125 &Max. :100.000 \tabularnewline
Infant.Mortality&Min. :10.80 &1st Qu.:18.15 &Median :20.00 &Mean :19.94 &3rd Qu.:21.70 &Max. :26.60 \tabularnewline
\hline
\end{tabular}\end{center}
\end{table}
\begin{table}[!tbp]
\begin{center}
\begin{tabular}{lllllll}
\hline\hline
\multicolumn{1}{l}{summary}&\multicolumn{1}{c}{ Fertility}&\multicolumn{1}{c}{ Agriculture}&\multicolumn{1}{c}{ Examination}&\multicolumn{1}{c}{ Education}&\multicolumn{1}{c}{ Catholic}&\multicolumn{1}{c}{Infant.Mortality}\tabularnewline
\hline
&Min. :35.00 &Min. : 1.20 &Min. : 3.00 &Min. : 1.00 &Min. : 2.150 &Min. :10.80 \tabularnewline
&1st Qu.:64.70 &1st Qu.:35.90 &1st Qu.:12.00 &1st Qu.: 6.00 &1st Qu.: 5.195 &1st Qu.:18.15 \tabularnewline
&Median :70.40 &Median :54.10 &Median :16.00 &Median : 8.00 &Median : 15.140 &Median :20.00 \tabularnewline
&Mean :70.14 &Mean :50.66 &Mean :16.49 &Mean :10.98 &Mean : 41.144 &Mean :19.94 \tabularnewline
&3rd Qu.:78.45 &3rd Qu.:67.65 &3rd Qu.:22.00 &3rd Qu.:12.00 &3rd Qu.: 93.125 &3rd Qu.:21.70 \tabularnewline
&Max. :92.50 &Max. :89.70 &Max. :37.00 &Max. :53.00 &Max. :100.000 &Max. :26.60 \tabularnewline
\hline
\end{tabular}\end{center}
\end{table}
\end{document}
这是需要一些化妆的结果
点击此处查看xtable Tools for making latex tables in R
等更多工具