在R函数名称周围添加引号的原因是什么?

Uel*_*ter 6 syntax r function

定义一个名为myfunction的函数有什么区别

"myfunction" <- function(<arguments>){<body>}
Run Code Online (Sandbox Code Playgroud)

myfunction <- function(<arguments>){<body>}
Run Code Online (Sandbox Code Playgroud)

此外:通常围绕这样一个功能的评论是什么,即

#myfunction{{{

 "myfunction" <- function(<arguments>){<body>}

#}}}
Run Code Online (Sandbox Code Playgroud)

他们只是为了文件还是真的有必要(如果是这样的话)?

编辑:我被问到一个例如评论的例子

#myfunction{{{
Run Code Online (Sandbox Code Playgroud)

使用:例如https://github.com/cran/quantmod/blob/master/R/getSymbols.R

Bro*_*ieG 8

引用的版本允许其他非法的函数名称:

> "my function" <- function() NULL
> "my function"()
NULL
Run Code Online (Sandbox Code Playgroud)

请注意,大多数人使用反引号来表明它们指的是名称而不是字符串.这允许你做一些非常奇怪的事情,如?assign:

> a <- 1:3
> "a[1]" <- 55
> a[1]
[1] 1
> "a[1]"
[1] "a[1]"
> `a[1]`
[1] 55
Run Code Online (Sandbox Code Playgroud)

  • 重新评论,就我所知,那些人没有做任何事情.它们可能是某些文档框架的一部分.`roxygen`使用`#'@ param ...`形式的注释,但我之前没有看到过这种形式的评论. (2认同)