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

时间:2014-07-22 10:39:16

标签: r knitr rnw

我正在编译.R文件中的knitr文档:

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

但在文档example.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]。问题在于创建对象的会话是什么?

1 个答案:

答案 0 :(得分:0)

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