Domanda

Quando si installano pacchetti R (diciamo mcmcpack in questo esempio) sotto Ubuntu ho la scelta tra i due seguenti metodi di installazione:

# Let the distribution's packaging system take care of installation/upgrades
apt-get install r-cran-mcmcpack

# Let R take care of installation/upgrades
install.packages("mcmcpack")

Domande:

  • è uno qualsiasi dei due modi per installare pacchetti R considerati "best practice"?
  • Si supponga che ho install.packages("mcmcpack") e poi apt-get install r-cran-mcmcpack -? Devo aspettarmi problemi
  • Si supponga che ho apt-get install r-cran-mcmcpack e poi install.packages("mcmcpack") -? Devo aspettarmi problemi
È stato utile?

Soluzione

Non è così facile come sembra.

  • apt-get update è buona se e quando

    • Pacchetti esistono - ma ci sono solo circa 150 o giù di lì pacchetti r-cran-* su un pool di 2100+ pacchetti su CRAN, la copertura in modo piuttosto scarsa

    • pacchetti sono mantenuti, privo di bug e la corrente

    • si è abbastanza soddisfatti con i rilasci semestrali di Ubuntu

  • install.packages() e update.packages() poi è buona se e quando

    • si sa cosa ci vuole per avere dipendenze a tempo costruito (oltre r-base-dev) installato

    • non vi dispiace in esecuzione update.packages() a mano, così come gli aggiornamenti apt-get.

Sulla mia macchina Ubuntu al lavoro, vado con la seconda soluzione. Ma poiché il primo è meglio se si dispone di sufficiente copertura , abbiamo costruito < strong> cran2deb che fornisce 2050+ pacchetti binari deb per amd64 e i386 --- ma solo per Debian testing. Questo è ciò che uso a casa.

Per quanto riguarda l'ultima domanda se si 'dovrebbe aspettare difficolta': No, perché R_LIBS_SITE occupa /etc/R/Renvironment di essere

# edd Apr 2003  Allow local install in /usr/local, also add a directory for
#               Debian packaged CRAN packages, and finally the default dir 
# edd Jul 2007  Now use R_LIBS_SITE, not R_LIBS
R_LIBS_SITE=${R_LIBS_SITE-'/usr/local/lib/R/site-library:\
/usr/lib/R/site-library:/usr/lib/R/library'}

Il che significa che tuo pacchetti vanno in /usr/local/lib/R/site-library, mentre quelli gestiti da apt andare in /usr/lib/R/site-library e (nel caso di pacchetti base) /usr/lib/R/library.

La speranza che chiarisca le questioni. La mailing list r-sig-debian è un luogo più informato per le domande di questo tipo.

Altri suggerimenti

  • Mi piacerebbe considerare l'utilizzo di apt-get migliori pratiche in quanto si ottengono gli aggiornamenti automatici attraverso gli strumenti di sistema standard.

  • Avendo 2 versioni installate potrebbe ottenere in confondendo situazioni:. A seconda della configurazione R è possibile caricare un'altra versione del pacchetto quindi ci si aspetta - Your Private (forse obsoleto) si dovrebbe essere generale in carica prima

  • Vedi sopra.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top