Aggiornare R da R (su Windows) – usando il pacchetto {installr}

Aggiornare R su Windows non è facile. Mentre le FAQ di R offrono delle linee guida, alcuni utenti potrebbero preferire eseguire semplicemente un comando per aggiornare il loro R all’ultima versione. Questo è ciò che fa il nuovo pacchetto {installr}.

Il pacchetto {installr} offre un insieme di funzioni di R per l’installazione e l’aggiornamento del software (attualmente, solo sui sistemi operativi Windows), con un’attenzione particolare per R stesso. Per aggiornare R, potete semplicemente eseguire il seguente codice:

# installing/loading the package:if(!require(installr)) {install.packages("installr"); require(installr)} #load / install+load installr# using the package:updateR() # this will start the updating process of your R installation. It will check for newer versions, and if one is available, will guide you through the decisions you'd need to make.

L’esecuzione di questa funzione eseguirà i seguenti passi:

  • Controllare qual è l’ultima versione di R. Se l’attuale versione di R installata è aggiornata, la funzione termina (e restituisce FALSE)

  • Se è disponibile una versione più recente di R, vi verrà chiesto se esaminare le NEWS dell’ultima versione di R – al fine di decidere se installare la
    più recente R o no.

  • Se lo desideri – la funzione scaricherà e installerà l’ultima versione di R. (dovrete premere i pulsanti “next” per conto vostro)

  • Una volta che l’installazione è fatta, dovreste premere “any-key”, e la funzione procederà a copiare tutti i vostri pacchetti dalla vostra vecchia (beh, attuale) installazione di R, nella vostra installazione di R più recente.

  • Puoi poi cancellare tutti i pacchetti della tua vecchia installazione di R.

  • Dopo che i tuoi pacchetti sono stati spostati (e quelli vecchi eventualmente cancellati), avrai la possibilità di aggiornare tutti i tuoi pacchetti nella nuova versione di R.

  • Infine – puoi aprire il nuovo Rgui e chiudere la sessione corrente del tuo vecchio R. (Questo è un po’ buggato nella versione 0.8, ma è stato corretto nella versione 0.8.1)

Se sapete di voler aggiornare R, e volete che i pacchetti vengano spostati (non copiati, SPOSTATI), potete semplicemente eseguire:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installrupdateR(F, T, T, F, T, F, T) # install, move, update.package, quit R.

Siccome i vari passi sono suddivisi in singole funzioni, potete anche scegliere cosa eseguire usando la relativa funzione:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installr# step by step functions:check.for.updates.R() # tells you if there is a new version of R or not.install.R() # download and run the latest R installercopy.packages.between.libraries() # copy your packages to the newest R installation from the one version before it (if ask=T, it will ask you between which two versions to perform the copying)

Se vi piace usare il sistema di libreria globale, potete eseguire quanto segue nel vecchio R:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installrupdateR(F, T, F, F, F, F, T) # only install R (if there is a newer version), and quits it.

E poi eseguire quanto segue nella nuova versione di R:

source("https://www.r-statistics.com/wp-content/uploads/2010/04/upgrading-R-on-windows.r.txt")New.R.RunMe()

Il pacchetto {installr} offre anche funzioni per installare vari altri software su Windows. Queste funzioni includono: install.pandoc (che è stato menzionato su questo blog recentemente), install.git, install.Rtools, install.MikTeX, install.RStudio, e le funzioni generali install.URL e install.packages.zip. Puoi vederle ulteriormente spiegate nel Manuale di riferimento del pacchetto.

Richieste di caratteristiche, segnalazioni di bug – e il tuo aiuto per migliorare il pacchetto

Puoi vedere l’ultima versione di installr su github, dove puoi anche inviare segnalazioni di bug (puoi anche solo lasciare un commento in questo post). Poiché questo è il mio primo pacchetto R, potrei aver (ad esempio: probabilmente ho) dimenticato qualcosa qui o lì. Quindi ogni commento su come migliorare il mio codice/documentazione/R-fu, sarà il benvenuto (qui o su github).

Se questo tipo di codifica è divertente/facile per voi, potete aiutarmi a migliorare questo pacchetto su github. Nuove caratteristiche interessanti che penso possano essere aggiunte (da me o da altri) sono:

  • Aggiungi una funzione uninstall.R – per rimuovere la vecchia versione di R.
  • Aggiungi più supporto per aggiornare R per le persone che usano una libreria globale per i loro pacchetti.
  • Aggiungi supporto per Linux e Mac! Questo sono meno propenso a farlo da solo – e mi piacerebbe vedere qualcun altro estendere il mio codice ad altri sistemi operativi.
  • GUI – aggiungere un’opzione basata su menu per eseguire updateR. Qualcosa come help->”check for updates” sarebbe fantastico. (p.s: questa idea viene da Yihui Xie)
  • aggiungere ancora più funzioni install.software. Se avete funzioni per le quali vi piacerebbe essere in grado di installarle facilmente – fatemelo sapere e potrebbero essere incluse nelle future versioni.

Grazie

Nota finale, vorrei ringraziare le molte persone che hanno sviluppato strumenti MERAVIGLIOSI per rendere possibile (e anche un po’ veloce) lo sviluppo di pacchetti R su Windows. Questi includono il Prof. Brian Ripley e Duncan Murdoch per Rtools, anche Uwe Ligges per il suo lavoro su CRAN, Hadley Wickham per devtools (in generale, e per la sua documentazione), Yihui Xie per roxygen2, JJ e altri nel team RStudio per RStudio, le persone dietro git e github, e altro ancora. Ci sono probabilmente altre cose per cui posso ringraziare queste persone, e molte altre persone che dovrei ringraziare, ma non riesco a capire chi siete probabilmente (sentitevi liberi di mandarmi una mail, apprezzo il vostro lavoro anche se non mi è chiaro chi ci sia dietro).

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *