从R文件编译Knitr . rnw, do.call()的问题



我正在从。r文件编译knitr文档:

knit2pdf(example.Rnw, output=paste0(name,".tex"))

但是在文档示例中。Rnw,这是函数:

do.call(cbind,mget(as.character(rep_names)))

Where rep_names它是由循环创建的一些数据帧的名称,我想合并。问题是我不知道创建的数据帧的确切数量。

如果我直接从knitr编译文档工作完美,但是当我从。r文件执行时,他没有找到rep_names的对象。关于。pdf输出的示例。

## Error: value for ’Object_1’ not found

其中Object_1为rep_names[1]。问题是在哪个会话上创建对象?

如果没有可复制的示例,很难在这里提供任何帮助。看看您所拥有的,我认为您应该改变创建数据框架的方式,将它们放在一个列表中,而不是作为全局环境中的命名对象。这样,您可以将有问题的行更改为do.call(cbind, listofdfs)。这里有许多问题和答案,可以推荐这种策略。

相关内容

最新更新