Quando si valuta library(foo)
, R carichi primo pacchetto foo a memoria, e quindi attribuisce il pacchetto al percorso search()
. Altre operazioni, come loadNamespace("foo")
o foo::fun
, o quando una terza parte indica che importa simboli da foo, caricare il pacchetto ma non collegarlo al percorso di ricerca. Poiché R è un linguaggio dinamico, ogni chiamata di funzione comporta un attraversamento dei simboli disponibili per trovare il primo che corrisponde. È efficiente ed evita conflitti di nomi non necessari, separando le operazioni di collegamento e caricamento e quindi restringendo il numero di simboli da cercare.
Nell'esempio sopra, il pacchetto strumenti è stato caricato, ma non (ancora) allegato. Quando si digita un simbolo al prompt dei comandi R, R cerca prima il simbolo nello spazio dei nomi globale (il primo elemento restituito da search()
e se non trovato poi negli elementi successivi di search()
. Poiché gli strumenti non sono allegati, i simboli in strumenti non sono risolte.
> file_ext
Error: object 'file_ext' not found
Tuttavia, si ha accesso a loro con tools::file_ext
, se gli strumenti è sul percorso di ricerca o no.
fonte
2013-02-20 22:04:15
suo quei pacchetti che sono 'suggested' da altri pacchetti, e non sono caricato (per accedere direttamente dall'utente, dovrei aggiungere). – Arun