R 如何将数据帧中的值直接输入到pdf处理中
我在Rstudio Swave中有以下代码,它生成一个简单的表:R 如何将数据帧中的值直接输入到pdf处理中,r,latex,sweave,R,Latex,Sweave,我在Rstudio Swave中有以下代码,它生成一个简单的表: \documentclass{article} \begin{document} \SweaveOpts{concordance=TRUE} \begin{table}[] \centering \caption{My caption} \label{my-label} \begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|} \hline 5 & 6 & 11 &am
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
\hline
5 & 6 & 11 & 22 & 33 & 44 & 55 & 55 & \multicolumn{4}{l|}{name1} & 66 & 777 & 888 \\ \hline
v1 & v2 & v3 & v4 & v5 & v6 & v7 & v8 & \multicolumn{4}{l|}{name2} & v9 & v10 & v11 \\ \hline
\end{tabular}
\end{table}
\end{document}
如何编辑代码,使值“5”、“6”、“v1”-“v11”等直接从我已经创建的data.frame中获取值。例如,如果我有一个名为“dataframe”的dataframe,是否可以这样做(它不起作用),但肯定有这样简单的事情可以做到
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
\hline
DATAFRAME[1,1] & 6 & 11 & 22 & 33 & 44 & 55 & 55 & \multicolumn{4}{l|}{name1} & 66 & 777 & 888 \\ \hline
v1 & v2 & v3 & DATAFRAME[4,4] & v5 & v6 & v7 & v8 & \multicolumn{4}{l|}{DATAFRAME[4,5]} & v9 & v10 & v11 \\ \hline
\end{tabular}
\end{table}
\end{document}
如果我已经用从数据帧中动态获取的值替换了表中的值,可以这样做吗?尝试使用
\Sexpr{dataframe[1,1]}
,\Sexpr{dataframe[4,4]}
等将从数据帧中提取指定的值。但是,如果您试图同时创建一个完整的表,请务必查看Kristofersen和Imo提到的knitr
和xtable
中的选项。这比重复调用\Sexpr{}
要容易得多
编辑:
请尝试以下代码,看看这在您的机器上是否有效。我只是将其设置为使用DATAFRAME的随机数据集
\documentclass{article}
\begin{document}
<<data, echo = FALSE>>=
set.seed(100)
DATAFRAME <- data.frame(round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2))
@
\SweaveOpts{concordance=TRUE}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
\hline
\Sexpr{DATAFRAME[1,1]} & 6 & 11 & 22 & 33 & 44 & 55 & 55 & \multicolumn{4}{l|}{name1} & 66 & 777 & 888 \\ \hline
v1 & v2 & v3 & \Sexpr{DATAFRAME[4,4]} & v5 & v6 & v7 & v8 & \multicolumn{4}{l|}{\Sexpr{DATAFRAME[4,5]}} & v9 & v10 & v11 \\ \hline
\end{tabular}
\end{table}
\end{document}
\documentclass{article}
\开始{document}
=
种子集(100)
数据帧尝试使用\Sexpr{DATAFRAME[1,1]}
,\Sexpr{DATAFRAME[4,4]}
等将从数据帧中提取指定的值。但是,如果您试图同时创建一个完整的表,请务必查看Kristofersen和Imo提到的knitr
和xtable
中的选项。这比重复调用\Sexpr{}
要容易得多
编辑:
请尝试以下代码,看看这在您的机器上是否有效。我只是将其设置为使用DATAFRAME的随机数据集
\documentclass{article}
\begin{document}
<<data, echo = FALSE>>=
set.seed(100)
DATAFRAME <- data.frame(round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2),
round(rnorm(n = 10),2))
@
\SweaveOpts{concordance=TRUE}
\begin{table}[]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
\hline
\Sexpr{DATAFRAME[1,1]} & 6 & 11 & 22 & 33 & 44 & 55 & 55 & \multicolumn{4}{l|}{name1} & 66 & 777 & 888 \\ \hline
v1 & v2 & v3 & \Sexpr{DATAFRAME[4,4]} & v5 & v6 & v7 & v8 & \multicolumn{4}{l|}{\Sexpr{DATAFRAME[4,5]}} & v9 & v10 & v11 \\ \hline
\end{tabular}
\end{table}
\end{document}
\documentclass{article}
\开始{document}
=
种子集(100)
DATAFRAME我认为knitr::kable()会满足您的需求。它输出一个降价格式的表格xtable
包也可以完成这项工作,并且有许多格式选项。它输出一个降价格式的表格xtable
包也可以完成这项工作,并且有许多格式选项。显示错误:“错误:在临时Rnw:12,找不到对象“DATAFRAME”?在编译阶段,您的数据帧实际命名为DATAFRAME吗?或者这正是你在问题中所用的例子?如果数据帧与数据帧不同,请确保它与数据帧的名称匹配。我刚刚用一个小示例编辑了我的答案。试一试,看看是否有效。如果没有,可能还有其他一些问题。是的,很好,谢谢。不确定之前的问题是什么-可能是我在不同的代码脚本中单独创建了数据帧,不确定。错误为:“错误:在临时Rnw:12,未找到对象‘dataframe’?”?在编译阶段,您的数据帧实际命名为DATAFRAME吗?或者这正是你在问题中所用的例子?如果数据帧与数据帧不同,请确保它与数据帧的名称匹配。我刚刚用一个小示例编辑了我的答案。试一试,看看是否有效。如果没有,可能还有其他一些问题。是的,很好,谢谢。不确定以前是什么问题-可能是我在不同的代码脚本中分别创建了数据帧,不确定。