运行 代码在一次击键中分布在多行 [r]

Run code spread over multiple lines in single keystroke [r]

Coding/R 菜鸟在这里。

假设我想绘制数据的直方图。为了保持整洁(至少对我而言),我将参数分成多行:

hist(data,
    density=20,     
    ylim=c(0,1),
    xlim=c(0,1),  
    freq=FALSE,
    xlab="X axis",
    ylab="Y axis",
    breaks=25)

curve(dnorm(x,mean, sd),
    col="black",
    add=TRUE,
    lwd=1.5)

现在我只想更改一两个参数,然后重新运行整个序列。如果我把所有的东西都放在一行上,我可以 运行 一键完成。现在 R 需要不少于 8 次击键来重新 运行 这段特定的代码。我当然可以 select 整个块和 运行 它,但这似乎有点繁琐。我也可以使用 "run previous",但在叠加图形时也会变得有点混乱,因为 R 没有 "undo plot",所以如果你的线宽,你需要重新 运行 一切第一次太宽泛了。

还有其他方法吗,la { } 之类的?

RStudio 预览版在语句执行方面更加智能。 Ctrl+Enter(或Cmd+Enter OS X) 将执行您的整个语句,无论它分布在多少行。您可以在此处下载预览:

https://www.rstudio.com/products/rstudio/download/preview/

这应该可以让您减少到两到三个击键。

如果你想用单次击键完成,你可以用节头注释代码,然后使用RStudio的运行代码第节命令。更多相关信息:

https://support.rstudio.com/hc/en-us/articles/200484568-Code-Folding-and-Sections

在 R studio select 首选项中单击代码。在编辑下有执行勾号 "Execute all lines in a statement".

这将允许您运行单个脚本的所有多行

在我使用的RStudio版本中,这又发生了变化。我通过转到“工具”>“全局选项”>“代码”来修复它。然后检查 "Focus Console After Executing Code"