R:注释掉代码块

可能重复:
R:多行注释变通办法?

我想在R中注释掉好几行代码。有什么办法可以不必在每行之前加一个#有点像/* blocked out code */在SAS中/* blocked out code */

大多数编辑采取某种快捷方式来注释掉代码块。 默认编辑器使用类似命令或控制和单引号来注释选定的代码行。 在RStudio中,它是命令或控制“/”。 检查你的编辑器。

它仍然是逐行评论,但他们也取消了选定的行的评论。 对于Mac的RGUI它的命令选项“(我想象的Windows是控制选项)。 对于Rstudio,它只是再次命令'/'。

一种块注释使用if语句:

 if(FALSE) { all your code } 

它的工作,但我几乎总是使用我的编辑(RStudio,凯特,Kwrite)的块评论选项。

把它包装在一个未使用的函数中:

 .f = function() { ## unwanted code here: } 

我使用RStudio或Emacs,并始终使用可用于评论区域的编辑器快捷方式。 如果这是不可能的,那么你可以使用保罗的答案,但这只适用于你的代码在语法上是正确的。

这是我想出来的另一个肮脏的方式,包装在scan()并删除结果。 它将评论存储在内存中一段时间​​,所以它可能不适用于非常大的评论。 最好还是在每一行前面加上#号(可能带有编辑快捷键)。

 foo <- scan(what="character") These are comments These are still comments Can also be code: x <- 1:10 One line must be blank rm(foo) 

我已经在talkstats.com的post94,101和103处理了这个线程: 分享你的代码 。 正如其他人所说,Rstudio可能是更好的select。 我将这些函数存储在我的.Rprofile中,并实际使用它们来快速自动地阻止代码行。

不像你期望的那么好,但可能是一种方法。