如何将方括号放在R中矩阵特定行中的元素上
我想使用xtable将我的输出从R导出到latex。此外,我希望每个表都有一个估计值及其标准误差。如何获得R中方括号中矩阵特定行的元素 将函数xtable应用于结果数据帧的预期输出应如下所示:如何将方括号放在R中矩阵特定行中的元素上,r,matrix,latex,R,Matrix,Latex,我想使用xtable将我的输出从R导出到latex。此外,我希望每个表都有一个估计值及其标准误差。如何获得R中方括号中矩阵特定行的元素 将函数xtable应用于结果数据帧的预期输出应如下所示: \begin{tabular}{lcccc} \hline & Hi & MV & Zi & Pi \\ \hline Mean & 0.57 & 0.50 & 0.54 & 0.42 \\ & [0.01] &am
\begin{tabular}{lcccc}
\hline
& Hi & MV & Zi & Pi \\
\hline
Mean & 0.57 & 0.50 & 0.54 & 0.42 \\
& [0.01] & [0.01] & [0.01] & [0.05] \\
Median & 0.57 & 0.50 & 0.54 & 0.42 \\
& [0.01] & [0.01] & [0.01] & [0.05] \\
MSE & 0.08 & 0.02 & 0.05 & 0.16 \\
& [0.01] & [0.00] & [0.01] &[ 0.04] \\
\hline
\end{tabular}
谢谢。你可以试试这个
x<-matrix(1:12,nrow=4)
bracket <- function(x, i, j){
x[i,j] <- sprintf("[%s]", x[i,j])
x
}
# x <- bracket(x, 2, 3) # test
# every second row
ind = which(row(x) %% 2 == 1, arr.ind = TRUE)
x <- bracket(x, ind[,1], ind[,2])
print(xtable(x), sanitize.text.function = I)
x我发现这对我的情况很有效,但也许有人能想出一个更有效的方法。假设我想把方括号放在奇数行中的元素上,那么这个微型程序可以工作:
x<-matrix(1:12,4,byrow=TRUE)
y<-matrix(NA,ncol=ncol(x),nrow=nrow(x))
Y<-t(sapply(1:nrow(x),function(i){
if(i%%2!=0){y[i,]<-x[i,]
}else{
y[i,]<-paste0("[",x[i,],"]")
}
}))
print(xtable(Y))
x请显示您的预期输出。理想情况下,您可以根据需要对LaTeX表进行屏幕抓取。您可能可以使用gsub或其他方式操纵字符串,但一个可复制的示例将大有帮助。我已经用我想要获得的LaTeX代码示例重新表述了这个问题。我希望这能让你了解更多