R: Instalação apt-get R-Cran-Foo vs. Install.packages ("Foo")
Pergunta
Ao instalar pacotes R (digamos mcmcpack
Neste exemplo), no Ubuntu, tenho a escolha entre os dois métodos a seguir de instalação:
# 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")
Perguntas:
- Alguma das duas maneiras de instalar pacotes R é considerada "melhor prática"?
- Suponha que eu primeiro
install.packages("mcmcpack")
e mais tardeapt-get install r-cran-mcmcpack
- Devo esperar problemas? - Suponha que eu primeiro
apt-get install r-cran-mcmcpack
e mais tardeinstall.packages("mcmcpack")
- Devo esperar problemas?
Solução
Não é tão fácil quanto parece.
apt-get update
é bom se e quandoexistem pacotes - mas existem apenas cerca de 150 ou mais
r-cran-*
Pacotes de uma piscina de mais de 2100 pacotes em cran, então uma cobertura bastante esparsaOs pacotes são mantidos, sem insetos e atuais
Você está feliz o suficiente com os lançamentos semestrais do Ubuntu
install.packages()
e depoisupdate.packages()
é bom se e quandoVocê sabe o que é preciso para ter dependências de tempo construído (além de
r-base-dev
) instaladoVocê não se importa de correr
update.packages()
à mão, bem como oapt-get
Atualizações.
Na minha máquina Ubuntu no trabalho, eu vou com a segunda solução. Mas porque o primeiro é melhor Se você tem cobertura suficiente, nós construímos cran2deb que fornece mais de 2050 pacotes de Deb binários para AMD64 e I386-mas apenas para testes de debian. É isso que eu uso em casa.
Quanto à última pergunta sobre se você 'deve esperar problemas': não, porque R_LIBS_SITE
É definido em /etc/R/Renvironment
ser
# 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'}
o que significa que sua Pacotes entram /usr/local/lib/R/site-library
Considerando que os gerenciados por apt
entrar /usr/lib/R/site-library
e (no caso de pacotes básicos) /usr/lib/R/library
.
Espero que esclareça os assuntos. A lista de discussão R-Sig-Debian é um local mais informado para perguntas como essa.
Outras dicas
Eu consideraria usar
apt-get
Melhores práticas, pois você obterá atualizações automáticas através das ferramentas do sistema padrão.Ter duas versões instaladas pode colocá -lo em situações confusas: dependendo da sua configuração R, você pode carregar outra versão do pacote e esperar - seu privado (talvez desatualizado), em geral, deve ser carregado primeiro.
Veja acima.