library(xtable)
library(magrittr)
library(moonBook)
options(ztable.type="html")
a=mytable(head(iris))
a
x = xtable(a)
x
我无法制作 xtable,只能使用 mytable... 想要使用 xtable,但输出像这样... 有什么问题?? 我安装了 latex 程序... 帮帮我,我在谷歌上找不到好的结果...
Descriptive Statistics
--------------------------------
N Total
--------------------------------
Sepal.Length 6 5.0 ± 0.3
Sepal.Width 6 3.4 ± 0.3
Petal.Length 6
- 1.3 1 (16.7%)
- 1.4 3 (50.0%)
- 1.5 1 (16.7%)
- 1.7 1 (16.7%)
Petal.Width 6
- 0.2 5 (83.3%)
- 0.4 1 (16.7%)
Species 6
- setosa 6 (100.0%)
- versicolor 0 (0.0%)
- virginica 0 (0.0%)
--------------------------------
% latex table generated in R 3.6.1 by xtable 1.8-4 package
% Fri Sep 27 14:45:14 2019
\begin{table}[ht]
\centering
\begin{tabular}{rllll}
\hline
& name & N & stats & class \\
\hline
1 & Sepal.Length & 6 & 5.0 ± 0.3 & continuous \\
2 & Sepal.Width & 6 & 3.4 ± 0.3 & continuous \\
3 & Petal.Length & 6 & & categorical \\
4 & - 1.3 & & 1 (16.7\%) & \\
5 & - 1.4 & & 3 (50.0\%) & \\
6 & - 1.5 & & 1 (16.7\%) & \\
7 & - 1.7 & & 1 (16.7\%) & \\
8 & Petal.Width & 6 & & categorical \\
9 & - 0.2 & & 5 (83.3\%) & \\
10 & - 0.4 & & 1 (16.7\%) & \\
11 & Species & 6 & & categorical \\
12 & - setosa & & 6 (100.0\%) & \\
13 & - versicolor & & 0 (0.0\%) & \\
14 & - virginica & & 0 (0.0\%) & \\
\hline
\end{tabular}
\end{table}
答案1
xtable()
在您的示例中运行良好。从到的输出 % latex table ...
是\end{table}
制作 LaTeX 表格的 LaTeX 代码,但 R 输出不是 LaTeX 文档,而只是部分是“按原样”无法编译的 LaTeX 代码块的文本。
因此你有两个选择:
1)将该代码复制并粘贴到完整的 LaTeX(.tex)文档中:
\documentclass{article}
\begin{document}
% paste your LaTeX table code here
\end{document}
您必须使用 或 进行编译pdflatex
(例如xelatex
:)lualatex
pdflatex mytable.tex
2)制作一个 Sweave (.Rnw) 文档,该文档几乎与 LaTeX 文档相同,但不是粘贴 LaTeX 表,而是包含 R 代码来获取该表,但也提供一些输出选项:
\documentclass{article}
\begin{document}
<<mytable,echo=FALSE,results="asis">>=
# paste your R code here
@
\end{document}
使用 Rstudio 编辑时,只需单击“编译 PDF”按钮即可获得相同的结果。
可编译工作示例:
\documentclass{article}
\begin{document}
<<mytable,echo=FALSE,results='asis'>>=
library(xtable)
a <- matrix(c(1,2,3,4,5,6,7,8,9),nrow=3)
xtable(a)
@
\end{document}