HOWTO · R

Come controllare la versione di R

Scopri come controllare la versione di R nella console di R, da un terminale e all'interno di uno script R, e capisci quale sessione o eseguibile riporta ciascun metodo.

In questa pagina

Usa R.version.string all’interno di R per un’etichetta di versione concisa, oppure esegui R --version in un terminale per esaminare l’eseguibile trovato nel PATH di quel terminale. L’espressione della console descrive la sessione R che hai aperto; il comando del terminale può riferirsi a un’installazione diversa da quella selezionata da un IDE.

Controllare la versione di R nella console di R

Al prompt di R, valuta R.version.string per stampare un’etichetta breve che include il numero di rilascio e gli eventuali dettagli di build. Di solito è il modo più rapido per identificare la versione usata dalla console corrente o dalla sessione di RStudio. L’espressione legge un valore; non chiama una funzione.

cat(R.version.string, "\n")

Output:

R version 4.2.2 Patched (2022-11-10 r83330)

Per dettagli strutturati, esamina R.version. È un oggetto integrato, non una funzione, e i suoi campi descrivono la build di R, inclusi i componenti major e minor, la piattaforma e la stringa di versione. Usa $ per leggere un campo specifico, come R.version$major, oppure visualizza l’intero oggetto quando diagnostichi differenze tra build. I campi e i valori esatti dipendono dall’installazione di R, quindi confronta la stringa di versione e i componenti rilevanti invece di affidarti a un esempio legato a un’altra macchina.

sessionInfo() risponde a una domanda di risoluzione dei problemi più ampia. Riporta la versione di R insieme al sistema operativo, alle impostazioni locali e alle informazioni sui pacchetti collegati o caricati. Usala quando un problema può dipendere dai pacchetti o dalla configurazione della sessione; usa R.version.string quando ti serve solo l’etichetta di versione.

Controllare la versione di R dalla riga di comando

In un terminale, esegui R --version. Questo chiede all’eseguibile R risolto dal PATH corrente di stampare le sue informazioni di versione. Il comando è utile su un server o in una shell in cui non apri la console grafica. Il suo risultato identifica quell’eseguibile, non necessariamente ogni installazione di R sul computer.

Se la versione stampata nel terminale differisce da R.version.string in RStudio o in un altro IDE, i due ambienti stanno usando eseguibili R diversi. Controlla quale eseguibile risolve il terminale e quale installazione l’IDE è configurato per usare. Un controllo di versione può aiutare a diagnosticare la compatibilità dei pacchetti, ma da solo non stabilisce quale rilascio di R richiede un progetto; consulta le istruzioni di configurazione e i requisiti dei pacchetti del progetto prima di cambiare installazione.

Controllare la versione di R in uno script R

Uno script R può stampare la versione che lo sta eseguendo e confrontare i componenti del rilascio con un minimo. getRversion() restituisce un valore di versione progettato per i confronti, in modo da evitare di trattare le etichette di versione come testo ordinario. Ad esempio, l’ordinamento testuale può ordinare male rilasci come 4.10 e 4.9; usa invece un confronto consapevole delle versioni.

cat(R.version.string, "\n")

required_version <- "4.0.0"
current_version <- getRversion()

if (current_version >= required_version) {
  cat("The required R version is available.\n")
} else {
  cat("This script expects R ", required_version, " or later.\n", sep = "")
}

Output:

R version 4.2.2 Patched (2022-11-10 r83330)
The required R version is available.

Il rilascio richiesto è un valore di esempio; sostituiscilo con il minimo supportato dal tuo codice o progetto. Lo script stampa la versione R attiva e riporta se quell’R soddisfa il requisito, lasciando la decisione su come installare o selezionare R alla configurazione dell’ambiente del progetto. Per una segnalazione di bug riproducibile, includi sessionInfo() oltre all’etichetta di versione, poiché le versioni dei pacchetti e i dettagli della piattaforma possono influire sul comportamento.