Mat*_*ert 10 r rounding xtable knitr
我得到了一些报告,其中包含一些包含比例和绝对值的表格.现在我想显示包含digits=2精度比例的行,而绝对值只显示digits=0.我知道xtable
使用这样的调用可以开箱即用
xtable(tableWith3Cols,digits=c(0,0,2,2))
Run Code Online (Sandbox Code Playgroud)
但有没有办法按行进行同样的事情?
编辑:这是一个可重复的例子
require(xtable)
df <- data.frame(col1=rnorm(10),col2=runif(10,1,3))
xtable(df,digits=c(0,5,0))
Run Code Online (Sandbox Code Playgroud)
回声
% latex table generated in R 2.15.1 by xtable 1.7-0 package
% Fri Jan 18 18:58:47 2013
\begin{table}[ht]
\begin{center}
\begin{tabular}{rrr}
\hline
& col1 & col2 \\
\hline
1 & -0.79222 & 3 \\
2 & 0.24845 & 2 \\
3 & 0.24217 & 2 \\
4 & -0.19935 & 2 \\
5 & 0.47873 & 2 \\
6 & 1.10494 & 2 \\
7 & 1.54076 & 1 \\
8 & 0.25272 & 2 \\
9 & -0.11308 & 1 \\
10 & -1.23875 & 2 \\
\hline
\end{tabular}
\end{center}
\end{table}
Run Code Online (Sandbox Code Playgroud)
这是列案例的解决方案.我得到2个不同的数字列,一个有5位数,一个是完全舍入的.
我想要的是例如:第2行和第10行5位数,其他所有其他0位数.
我的矩阵生成技能并不是最优雅的,但这是你想要的吗?
require(xtable)
df <- data.frame(col1=rnorm(10),col2=runif(10,1,3))
mdat <- matrix(c(rep(0,3), 0, 5, 0, rep(0, (7*3)), 0, 5, 0),
nrow = 10, ncol=3, byrow=TRUE)
xtable(df,digits=mdat)
% latex table generated in R 2.15.1 by xtable 1.7-0 package
% Fri Jan 18 15:52:41 2013
\begin{table}[ht]
\begin{center}
\begin{tabular}{rrr}
\hline
& col1 & col2 \\
\hline
1 & -0 & 3 \\
2 & 1.16203 & 1 \\
3 & 1 & 2 \\
4 & 0 & 2 \\
5 & 0 & 2 \\
6 & -1 & 2 \\
7 & 1 & 2 \\
8 & 1 & 2 \\
9 & -1 & 2 \\
10 & 0.63731 & 2 \\
\hline
\end{tabular}
\end{center}
\end{table}
Run Code Online (Sandbox Code Playgroud)
或者整排,
require(xtable)
df <- data.frame(col1=rnorm(10),col2=runif(10,1,3))
mdat <- matrix(c(rep(0,3),rep(5,3), rep(0, (7*3)), rep(5,3)),
nrow = 10, ncol=3, byrow=TRUE)
xtable(df,digits=mdat)
% latex table generated in R 2.15.1 by xtable 1.7-0 package
% Fri Jan 18 16:00:12 2013
\begin{table}[ht]
\begin{center}
\begin{tabular}{rrr}
\hline
& col1 & col2 \\
\hline
1 & -0 & 1 \\
2 & 1.36652 & 2.10159 \\
3 & 0 & 2 \\
4 & -2 & 2 \\
5 & -1 & 2 \\
6 & 0 & 2 \\
7 & -0 & 2 \\
8 & -0 & 1 \\
9 & -1 & 2 \\
10 & -0.44182 & 2.09663 \\
\hline
\end{tabular}
\end{center}
\end{table}
Run Code Online (Sandbox Code Playgroud)