设置 Sweave、R、Latex、Eclipse StatET

机器算法验证 r
2022-03-03 05:13:16

几天前,我看到一篇关于如何设置 SweaveR 的帖子,它允许用户直接将表格、图表等内容导出到 Latex 中。我不能完全按照指示。

任何人都可以提供有关如何在 Mac 和 Windows 上执行此操作的分步说明吗?

4个回答

我使用 Eclipse / StatEt 使用 Sweave 和 LaTex 生成文档,并发现 Eclipse 非常适合作为编辑环境。我可以推荐以下指南:

我还在 Windows 上使用MikTex,发现设置后一切正常。Stack Overflow 上也有一些很好的问题和答案

对我来说,我发现 Eclipse 对于创建科学论文来说太过分了。因此,对于 Windows,我所做的是:安装 Miktex 2.8(?不确定版本)。确保将 Miktex 安装到诸如 C:\Miktex 之类的目录中,因为 Latex 讨厌文件路径中有空格。确保选择即时安装软件包的选项。

还要确保 R 安装在 Latex 可以找到它的某个地方,即在没有空格的路径中。我安装了 TechNix center 作为我的程序来编写文档,但是还有很多其他的,比如 WinEdt、eclipse、texmaker,或者实际上是 Emacs。现在,请确保您的序言中有 \usepackage{Sweave} 和 usepackage{graphicx}。我相信您知道,您需要将 <>= 放在 R 块的开头,并以 @ 结尾。您将需要包 xtable 或 Hmisc 将 R 对象转换为乳胶格式。

我喜欢 xtable,但您可能需要对对象进行大量处理才能将其转换为 xtable 可以接受的形式(lm 输出、数据帧、矩阵)。插入表格时,请确保将 results=tex 选项放入代码块的序言中,如果需要图形,请确保 fig=TRUE 选项也存在。您也只能为每个块生成一个图形,因此请记住这一点。需要非常小心的是,R 代码位于页面的最左侧,就好像它被封闭在一个环境中一样,然后它将被忽略(这花了我很长时间才弄清楚)。

您需要将文件保存为 .Rnw - 确保您使用的任何 tex 程序都不会在此之后附加 .tex,因为这会导致问题。

然后从命令行运行 R CMD Sweave foo.Rnw,或者从 R 内部运行 Sweave("foo.Rnw")。它不可避免地会在某些时候失败(特别是如果你以前没有这样做过),所以只需调试你的 .Rnw 文件,冲洗并重复。

如果这是您第一次这样做,那么在 r 中编写所有 R 分析代码可能会更容易,然后使用 print 语句将它们插入到 LaTex 中。不过,我不建议将其作为一个好主意,就好像您在此过程结束时发现您的数据文件有错误(就像我上周末所做的那样),那么您将需要重新运行所有分析,如果您可以正确执行从乳胶内开始,是可以避免的。

此外,Sweave 计算可能需要一些时间,因此您可能希望使用 R 包 cacheSweave 来保存重新运行的分析。显然 R 包突出显示允许在文档中对 R 代码进行颜色编码,但我没有使用过这个。

我从来没有在 Mac 上使用过 Latex 或 R,所以我会把这个解释留给其他人。希望这可以帮助。

假设您的系统上已经安装了 LaTeX,RStudio (rstudio.org) 使事情变得非常容易。有一个 PDF 按钮可以通过 Sweave 运行代码,然后通过 pdflatex 运行代码并启动 pdf 查看器。

我最近安装了这个套件,并按照这里的说明按照说明进行操作

有所有必需的软件组件的链接。我将 MiKTex 用于所有 LaTex 组件。

如果您计划使用 64 位 Windows,则存在一些缺陷,因为您将需要额外的 64 位 Java 运行时。如果您在 64 位 IE 中访问 java.com 并验证您的安装,这很容易克服,它将指向您很难找到的 64 位安装程序。

为了避免混淆路径变量,我只是在 C:\Program Files 中提取了 eclipse 文件夹,因为这是 java 和 64 位 R 所在的位置。从这里可以轻松地自动运行 eclipse 中的配置选项并找到适当的参数。

我希望这有帮助。