在 Rmarkdown 文件中包含带有 markdown 标签的 R 脚本作为外部文件
Include R script with markdown tags as external file in Rmarkdown file
假设我有一个带有 markdown 标签的 .R 文件 tmp.R
,例如
#' # header
5+1
我想将其作为外部源包含到(更大的).Rmd
文件中。 R 代码和 markdown 标签应该像直接渲染一样被评估。我该怎么做?
---
title: "Untitled"
output: html_document
---
我试过几个选项,包括
```{r, results='asis'}
source("tmp.R")
```
或
```{r, results='asis'}
knitr::spin("tmp.R')
```
和其他几个人。不幸的是我没有在 Whosebug 上找到解决方案,包括 this, this, this, this or this 问题。
您需要在 temp.R
文件中编写代码,以便可以直接在块中对其进行计算。
因此 tmp.R 使用:
cat("# header \n\n")
cat(4+3)
然后您可以将其包含在 R-Markdown 文件中:
```{r, results='asis'}
source("tmp.R")
```
我不太确定我是否理解你的问题,但在我看来你正在寻找 knitr::spin_child()
,它将 R 脚本转换为 Rmd 并将其编织为子文档:
```{r}
knitr::spin_child('tmp.R')
```
假设我有一个带有 markdown 标签的 .R 文件 tmp.R
,例如
#' # header
5+1
我想将其作为外部源包含到(更大的).Rmd
文件中。 R 代码和 markdown 标签应该像直接渲染一样被评估。我该怎么做?
---
title: "Untitled"
output: html_document
---
我试过几个选项,包括
```{r, results='asis'}
source("tmp.R")
```
或
```{r, results='asis'}
knitr::spin("tmp.R')
```
和其他几个人。不幸的是我没有在 Whosebug 上找到解决方案,包括 this, this, this, this or this 问题。
您需要在 temp.R
文件中编写代码,以便可以直接在块中对其进行计算。
因此 tmp.R 使用:
cat("# header \n\n")
cat(4+3)
然后您可以将其包含在 R-Markdown 文件中:
```{r, results='asis'}
source("tmp.R")
```
我不太确定我是否理解你的问题,但在我看来你正在寻找 knitr::spin_child()
,它将 R 脚本转换为 Rmd 并将其编织为子文档:
```{r}
knitr::spin_child('tmp.R')
```