将R中的表格变成乳胶

时间:2015-01-15 07:20:24

标签: r latex

  library(tables)
  iris2 <- iris[ iris$Species != 'versicolor', ]
  iris2$Species <- factor(iris2$Species)
  tmp <- tabular( Petal.Width+Petal.Length + Sepal.Width+Sepal.Length ~ Species* (mean+sd),       data=iris2 )

  tmp.p <- sapply( names(iris2)[1:4], function(x) t.test( iris2[[x]] ~ iris2$Species )$p.value )
  tmp

  > tmp

                Species                        
                setosa         virginica       
                mean    sd     mean      sd    
   Petal.Width  0.246   0.1054 2.026     0.2747
   Petal.Length 1.462   0.1737 5.552     0.5519
   Sepal.Width  3.428   0.3791 2.974     0.3225
   Sepal.Length 5.006   0.3525 6.588     0.6359

我想把我的R表变成乳胶代码。所以我跑了

 > latex(tmp, file = "")

% latex.default(tmp, file = "") 
%
\begin{table}[!tbp]
 \begin{center}
 \begin{tabular}{rrrrrrrrrrrrrrrr}\hline\hline
\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}&\multicolumn{1}{c}{}\tabularnewline\hline
$0.246$&$1.462$&$3.428$&$5.006$&$0.105385589380046$&$0.173663996480184$&$0.379064369096289$&$0.352489687213451$&$2.026$&$5.552$&$2.974$&$6.588$&$0.274650055636667$&$0.551894695663983$&$0.322496638172637$&$0.635879593274432$\tabularnewline
\hline
\end{tabular}

\end{center}

\end{table}

这就是R给我的。但问题是只有1行,实际上应该至少有5行。第一行是物种名称,第二行是花瓣宽度,第三行是花瓣长度,依此类推。这与tmptabular而不是table有什么关系?我可以更改哪些表格以乳胶格式显示?另外,有没有办法只在一列中为{4}的花瓣宽度mean (sd)0.246 (0.105),而不是有两个单独的列?

1 个答案:

答案 0 :(得分:0)

您显示的输出在您致电

时发生
latex.default(tmp, file = "")

如果你打电话

latex(tmp, file = "")

然后你得到正确的输出,因为它找到tabular项的适当方法。