在knitr中有一个read_chunk
函数,它将外部代码读入一个块。是否有可能扭转这一过程。也就是说,创建一个函数write_chunk()
,将块中的源代码保存到R文件中?文件名可以与块名称相同。
答案 0 :(得分:4)
我找到了一个使用钩子的解决方案。添加以下钩子:
knit_hooks$set(write_chunk = function(before, options, envir) {
if (before) {
fileConn<-file(paste0("chunk_",options$label,".R") )
writeLines(options$code, fileConn)
close(fileConn)
}
})
并在块的标题中使用选项<<chunk-name, write_chunk=TRUE>>
。
答案 1 :(得分:0)
You can use the following syntax
Stangle(file = "Your_code.Rnw",output="Code.R"):
But this I can prove the following error:
#Error: ‘Your_code.Rnw’ is not ASCII and does not declare an encoding
Adding the following parameter (encoding = "UTF-8"), the coding problem is solved
Stangle("Your_code.Rnw",output="Code.R",encoding="utf8")