我正在尝试 Rmd 笔记本,我被困在一些看起来应该可行的事情上,但我根本找不到解决方案。
基本上,我想要一种功能性的方法来运行选定的 Rmd 块,而无需使用 knit 进行编译。所以我认为使用依赖块、缓存等在这里不起作用。
这是一个示例笔记本:
示例_笔记本.Rmd
---
title: "Example_Notebook"
output: html_notebook
---
```{r Chunk_1 , include=T}
print(1+2)
Var1 <- 'Variable From Chunk 1'
```
```{r Chunk_2 , include=T}
Var2 <- 'Variable From Chunk 2'
```
```{r Chunk_3 , include=T}
print(Var1)
Var3 <- 'Variable From Chunk 3'
print(Var3)
```
Run Code Online (Sandbox Code Playgroud)
假设我想运行 Chunk 1 和 Chunk 3。要手动执行此操作,我可以在光标位于 Chunk_1 时使用 Ctrl+Shift+Enter,然后在光标位于 Chunk_3 时再次使用 Ctrl+Shift+Enter。这将跳过 Chunk_2,同时仍然获得 1 和 3 的输出。
我正在寻找一种方法来在单个命令/函数中执行此操作。这与 RStudio 中的“运行上面的所有块”按钮类似,但显然我想跳过 Chunk_2。
我尝试了很多方法将其写在函数中。我得到的最接近的是使用 rstudioapi 包。这是我的函数的样子:
MyNewFunction <- function(){
rstudioapi::navigateToFile( …Run Code Online (Sandbox Code Playgroud)