2013-04-16 38 views
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軟件包是xtable,stargazer和/或Hmisc

xtable,可以將溶液在format.args找到:「爲formatC函數的參數列表。例如,德國標準號分離器可以被指定爲format.args=list(big.mark = "’", decimal.mark = ","))。」 - http://cran.r-project.org/web/packages/xtable/xtable.pdf

謝謝

回答

2

這是簡單的使用功能xtable()之前的df$value與美元格式進行格式化。使用您的例子中,你有以下(這需要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}