首页 文章

R:创建没有环境代码的Latex表

提问于
浏览
1

如何在R中打印乳胶格式的表(例如摘要统计信息,无回归输出),但没有像 \begin{table}[!htbp] \centering 这样的环境代码?

我尝试了Tools for making latex tables in R中列出的许多软件包 . 只有stargazer包似乎有一个抑制Latex环境代码的选项,即 out.header=FALSE . 但这种选择似乎没有效果 . 其他套餐似乎没有更少的选择 .

背景:我有两张非常类似的表(在我的情况下是spearman和pearson相关性),我希望在Latex的一个表中有 . 我想简单地在第三个乳胶文件中调用R生成的乳胶格式的输出,最终在Latex文档中调用 . 但如果还有其他可能性在一个 .tex 文档中创建两个R生成的Latex样式表,我很乐意使用它们 .

2 回答

  • 4

    您可以使用 xtable 执行此操作:

    这是默认行为:

    > print(xtable(table(1:5)))
    % latex table generated in R 3.1.1 by xtable 1.7-4 package
    % Sat Nov 08 14:57:56 2014
    \begin{table}[ht]
    \centering
    \begin{tabular}{rr}
      \hline
     & V1 \\ 
      \hline
    1 &   1 \\ 
      2 &   1 \\ 
      3 &   1 \\ 
      4 &   1 \\ 
      5 &   1 \\ 
       \hline
    \end{tabular}
    \end{table}
    

    如果在 print 方法选项中包含 floating = FALSE ,则可以获得所需的结果:

    > print(xtable(table(1:5)), floating = FALSE)
    % latex table generated in R 3.1.1 by xtable 1.7-4 package
    % Sat Nov 08 14:57:51 2014
    \begin{tabular}{rr}
      \hline
     & V1 \\ 
      \hline
    1 &   1 \\ 
      2 &   1 \\ 
      3 &   1 \\ 
      4 &   1 \\ 
      5 &   1 \\ 
       \hline
    \end{tabular}
    

    这里有非常精细的控制,但大多数选项都在 ? print.xtable 中描述,而不是 ? xtable .

  • 0

    为什么不在第一步中将两个表合并为一个data.frame,然后为您的任务格式化组合的东西?你的问题中只有很少的细节,但我想这里的一些东西可以起作用:

    x <- rbind( cor(mtcars, use="complete.obs", method="spearman"),
                cor(mtcars, use="complete.obs", method="pearson" ))
    rownames( x )[12:22] <- paste( rownames( x )[12:22], "a", sep = "-" )
    xLatex <- xtable( x )
    

相关问题