码
hello.Rnw:
\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}
\end{document}命令:
rnwfile <- system.file("Sweave", "hello.Rnw", package = "utils")
Sweave(rnwfile)输出:
SweaveReadFile中的错误(文件、语法、编码=编码):没有找到有名称‘’的Sweave文件
问题
这里有什么问题?使用另一个更复杂的文件输出相同。如果我只将文件的路径添加到Sweave()中,那么它适用于hello.Rnw,而不适用于更复杂的文件。然后输出是:"Error:‘test.Rnw’不是ASCII,也不声明编码“。
发布于 2016-02-11 14:11:08
system.file()函数用于定位作为R包一部分安装的文件。例如,如果您想运行R附带的Sweave示例,那么它们必须是实际提供的示例。
list.files(system.file("Sweave",package="utils"))
## [1] "example-1.Rnw" "Sweave-test-1.Rnw"
Sweave(system.file("Sweave","example-1.Rnw",package="utils"))效果很好。(您可能对使用此语法的?Sweave文档感到困惑--它不是Sweave工作流的必要部分,只是用于检索示例输入文件。)
如果您希望在您自己的.Rnw 文件上运行Sweave() ,则需要确保它们位于您的工作目录中(或指定完整路径);请参见?setwd/?getwd。
为了了解问题所在,我们需要看到test.Rnw。
如果您不喜欢Sweave,我强烈建议您查看一下knitr包:它做的事情和Sweave一样,但是(IMO)更好。(它也有很好的记录。)
https://stackoverflow.com/questions/35340758
复制相似问题