2

这是示例数据:

# create table data
year <- c("2010", "2011", "2012")
value <- ("5", "10", "15")
df<-data.frame(year, value)

# print
print(xtable(df,digits=c(0,0,1)))

如何格式化 5、10 和 15 以显示为 $5.0、$10.0 和 $15.0?

可能提供帮助的 R 包是xtablestargazer和/或Hmisc.

在 内xtable,解决方案可以在format.args:“formatC函数的参数列表。例如,标准德语数字分隔符可以指定为format.args=list(big.mark = "’", decimal.mark = ","))。” - http://cran.r-project.org/web/packages/xtable/xtable.pdf

谢谢

4

1 回答 1

2

df$value在使用xtable()函数之前格式化美元格式更简单。使用您的示例,您有以下内容(需要scales库):

library(xtable)
library(scales)

# create table data
year <- c("2010", "2011", "2012")
value <- c("5", "10", "15")
df<-data.frame(year, value)

df$value <- dollar(as.numeric(as.character(df$value)))

# print
print(xtable(df))

这将产生以下 LaTeX 代码:

% latex table generated in R 2.12.2 by xtable 1.6-0 package
% Fri May 03 10:46:58 2013
\begin{table}[ht]
\begin{center}
\begin{tabular}{rll}
  \hline
 & year & value \\ 
  \hline
1 & 2010 & \$5.00 \\ 
  2 & 2011 & \$10.00 \\ 
  3 & 2012 & \$15.00 \\ 
   \hline
\end{tabular}
\end{center}
\end{table}
于 2013-05-03T16:53:37.873 回答