22

stargazer自动居中表格中的值。如何左对齐列?

将此代码放入 .Rnw 文件并使用 knitr 转换为 .tex:

<<load, echo=FALSE, warning=FALSE, message=FALSE>>=
opts_chunk$set(eval=TRUE, echo=FALSE, warning=FALSE, message=FALSE, dpi=300)
@


\documentclass[a4paper,11pt]{article}
\usepackage{lipsum} % Required to insert dummy text

\begin{document}
\title{}
\author{}
\date{\today}
\maketitle

\section{Header}

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

<<iris, results = "asis">>=
library(stargazer)
stargazer(iris[1:10,4:5], summary  = FALSE)
@

\end{document}

这是 PDF 输出:

在此处输入图像描述

4

1 回答 1

4

正如评论中所指出的,您可以对 stargazer 的输出进行后处理,也可以使用 xtable。我将演示这两种方法。

  1. 后处理:用以下两个代码块替换您的代码夹头

    <<echo=FALSE, results=hide>>=
    library(stargazer)
    tab <- stargazer(iris[1:10,4:5], summary  = FALSE) 
    @
    
    <<results=tex, echo=FALSE>>=
    collapse <- function(st) paste(st, collapse="")
    st <- gsub(collapse(rep("c", 3)), collapse(rep("l",3)), tab)
    cat(st[4:24])
    @
    
  2. xtable:安装xtable软件包后,您可以将其用作您的代码夹

    <<iris, results="asis", echo=FALSE>>=
    library(xtable)
    print(xtable(iris[1:10,4:5], align="lll", caption=""))
    @
    

我认为xtable方法可能更容易

于 2015-08-19T19:03:39.730 回答