2012-03-11 91 views
15

我最近在R中看到了一個函數,其中有人用.作爲參數。我似乎無法找到任何文檔(除了使用省略號或「點 - 點」)。有人可以指向我的文檔方向或提供一個使用示例嗎?R函數中點/週期的使用

hello.world <- function(.) "Hello World" 
# function(.) is what I'm asking about. 
+1

這出現在交叉驗證,以及其他一些好的花絮:http://stats.stackexchange.com/questions/10712/what-is-the-meaning-of-the-dot-in-r/10739#10739 – Chase 2012-03-11 20:17:14

回答

13

點是在就像任何字母符號名稱的有效字符,所以.是沒有什麼不同假設a - 它在這方面沒有任何特殊含義。你可以寫的東西,如:

> . <- 10 
> . + . 
[1] 20 

它可能看起來很奇怪,但有效的R.以上使用function(.)是假設不尋常的,但語法有效。由於作者未在函數體中引用.,因此我們永遠不會知道他是否意味着...或僅僅因爲他可以使用它。

+0

它在標識符開始處有一個稍微特殊的含義:http://cran.r-project.org/doc/manuals/R-lang.html#Identifiers – huon 2012-03-11 06:36:10

+0

不是。 R中有幾個慣例使用了點(隱藏符號,S3派遣,...),但上面提到的'.'沒有特殊含義。 – 2012-03-11 06:38:47

+0

它對'proto'具有特殊的含義:[「方法的形式參數列表必須始終有第一個點(即。)的參數,它表示該方法正在操作的對象。相同的方式,一個點指的是UNIX中的當前目錄「](http://cran.r-project.org/web/packages/proto/vignettes/proto.pdf) – baptiste 2012-03-11 06:43:00