2012-03-11 12 views
15

Recientemente vi una función en R donde alguien había usado . como argumento. Parece que no puedo encontrar ninguna documentación sobre esto (que no sea el uso de puntos suspensivos o "punto-punto-punto"). ¿Puede alguien señalarme en la dirección de la documentación o darme un ejemplo de uso?Uso de punto/período en funciones R

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

esto salió en la cruz validada también, algunas otras buenas cositas allí: http://stats.stackexchange.com/questions/10712/what-is-the-meaning-of-the-dot-in-r/10739 # 10739 – Chase

Respuesta

13

Dot es un un carácter válido en los nombres de símbolos igual que cualquier carta, por lo . no es diferente a digamos a - no tiene ningún significado especial en este contexto. Usted puede escribir cosas como:

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

Puede parecer extraño, pero es válido en R. Lo anterior se uso function(.) digamos inusual, pero sintácticamente válida. Dado que el autor no hizo referencia al . en el cuerpo de la función, nunca sabremos si quiso decir ... o simplemente lo usó porque podría.

+0

Tiene un significado ligeramente especial al comienzo de los identificadores: http://cran.r-project.org/doc/manuals/R-lang.html#Identifiers – huon

+0

No realmente. Hay varias convenciones en R que hacen uso de puntos (símbolos de ocultación, envío de S3, ...), pero '.' como se le preguntó anteriormente no tiene ningún significado especial. –

+0

tiene un significado especial para 'proto': [" las listas de argumentos formales de los métodos siempre deben tener un primer argumento de punto (es decir) que signifique el objeto sobre el que opera el método. El punto se refiere al objeto actual en el de la misma manera que un punto se refiere al directorio actual en UNIX "] (http://cran.r-project.org/web/packages/proto/vignettes/proto.pdf) – baptiste

Cuestiones relacionadas