我在想是否有人能帮忙找出(如果可能的话)获取存储在R
中的向量中的源代码,并将其传递给Quarto或Markdown中的代码块。本质上,我尝试做的事情与使用代码块的file=
选项从外部数据文件读取代码块的源代码是一样的。但我不想将它指向包含源代码的外部文件,而是想从一个vector元素中提取源代码。
例如,如果我有一个名为myfile.R
的文件,其中包含以下R代码:
x <- rnorm(100)
hist(x)
我想把这段代码拉到一个代码块中,然后用Quarto或R渲染,我可以简单地使用:
```{R, echo=TRUE, file="myfile.R"}
这将创建一个Quarto/Markdown文档,打印`myfile.R`的内容,然后生成一个直方图。然而,如果代码不是存储在外部文件中,而是存储在R中的一个向量元素中呢?例如,假设我有一个存储在`myfile.R`中的相同代码,只是它存储为source_code_vector中的一个字符变量。以及可能包含源代码的一些其他元素:
source_code_vector <- c("x <- rnorm(100) hist(x)", "y<-rpois(100, 5) hist(y)")
如何访问`source_code_vector`的第一个元素中的代码并将其传递到代码块中?我想应该是这样的(但这显然是不对的,因为代码不是存储在文件中,而是存储在向量中):
我意识到我总是可以把元素的值写出到一个文本文件中,然后在文本文件中读回到代码块中,但这似乎效率很低,我想有一个更好的方法来做到这一点?
谢谢。
1条答案
按热度按时间c2e8gylq1#
您可以使用块选项
code
代替file
:https://yihui.org/knitr/options/#code-chunk