write - r studio>}
En R, ¿qué significa "cargado a través de un espacio de nombres(y no adjunto)"? (2)
En R, ¿qué significa que un paquete se "cargue a través de un espacio de nombres (y no se adjunte)" en sessionInfo()
?
Editar :
Por ejemplo:
> sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
---->>>> loaded via a namespace (and not attached):
---->>>> [1] tools_2.15.2
Cuando uno evalúa la library(foo)
, R primero carga el paquete foo en la memoria y luego adjunta el paquete a la ruta de search()
. Otras operaciones, como loadNamespace("foo")
o foo::fun
, o cuando un tercero indica que importa símbolos de foo, cargue el paquete pero no lo adjunte a la ruta de búsqueda. Dado que R es un lenguaje dinámico, cada llamada de función implica un recorrido transversal de los símbolos disponibles para encontrar el primero que coincida. Es eficiente y evita conflictos de nombre innecesarios, al separar las operaciones de conexión y carga y, por lo tanto, restringir el número de símbolos a buscar.
En el ejemplo anterior, el paquete de herramientas se ha cargado, pero no (aún) adjunto. Cuando se escribe un símbolo en el símbolo del sistema de R, R busca el símbolo primero en el espacio de nombres global (el primer elemento devuelto por search()
y, si no se encuentra, en los elementos sucesivos de search()
. Dado que las herramientas no están vinculadas , los símbolos en las herramientas no se resuelven.
> file_ext
Error: object ''file_ext'' not found
No obstante, uno tiene acceso a ellos con tools::file_ext
, ya sea que las herramientas estén en la ruta de búsqueda o no.
Significa que el paquete (en este caso R) puede acceder a las funciones / objetos del paquete, pero el usuario no puede, sin la carga explícita, del paquete de herramientas donde las estadísticas, gráficos, etc. están cargados y listos para el usuario.
Aquí hay un ejemplo:
sessionInfo()
file_ext("file.com")
tools::file_ext("file.com")
sessionInfo()