Skip to main content

Come installare R su Debian/Ubuntu

Questa guida spiega come installare il linguaggio di programmazione R sul tuo server Debian o Ubuntu. R è un linguaggio open-source ampiamente utilizzato per lo sviluppo di software statistico, l'analisi dei dati e la visualizzazione.

Ordinare un server

Per eseguire R e le tue analisi dati, HostMyServers offre diverse opzioni:

Prerequisiti

  • Accesso SSH root o utente con sudo
  • Debian 11/12 o Ubuntu 20.04/22.04/24.04
  • Minimo 1 GB di RAM (2 GB+ consigliati per calcoli pesanti)

Perché usare R?

R è particolarmente adatto per:

  • Analisi statistica: Test, modelli di regressione, analisi della varianza
  • Visualizzazione dei dati: Grafici pronti per la pubblicazione con ggplot2
  • Machine Learning: Classificazione, clustering, reti neurali
  • Bioinformatica: Analisi genomica e proteomica
  • Finanza: Analisi del rischio, modellazione finanziaria

Passaggio 1: Installazione delle dipendenze

Poiché R è un progetto in sviluppo attivo, l'ultima versione stabile non è sempre disponibile nei repository Debian/Ubuntu. Aggiungeremo il repository esterno mantenuto da CRAN.

Aggiornamento del sistema

sudo apt update && sudo apt upgrade -y

Installazione degli strumenti necessari

sudo apt install -y dirmngr gnupg apt-transport-https ca-certificates software-properties-common

Questi pacchetti forniscono:

  • dirmngr: Gestione dei certificati e operazioni di rete
  • gnupg: Gestione delle chiavi GPG
  • apt-transport-https: Supporto HTTPS per APT
  • ca-certificates: Certificati delle autorità di certificazione
  • software-properties-common: Gestione dei repository

Passaggio 2: Aggiunta del repository CRAN

Aggiungere la chiave GPG

sudo gpg --keyserver keyserver.ubuntu.com --recv-key '95C0FAF38DB3CCAD0C080A7BDC78B2DDEABC47B7'
sudo gpg --armor --export '95C0FAF38DB3CCAD0C080A7BDC78B2DDEABC47B7' | sudo tee /etc/apt/trusted.gpg.d/cran_debian_key.asc

Aggiungere il repository per la tua distribuzione

Per Debian 11 (Bullseye)

echo "deb http://cloud.r-project.org/bin/linux/debian bullseye-cran40/" | sudo tee /etc/apt/sources.list.d/r-project.list

Per Debian 12 (Bookworm)

echo "deb http://cloud.r-project.org/bin/linux/debian bookworm-cran40/" | sudo tee /etc/apt/sources.list.d/r-project.list

Per Ubuntu 22.04 (Jammy)

sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/"

Per Ubuntu 24.04 (Noble)

sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu noble-cran40/"

Aggiornare la lista dei pacchetti

sudo apt update

Passaggio 3: Installazione di R

Verificare la versione disponibile

apt-cache policy r-base

Installare R

sudo apt install -y r-base r-base-dev

Il pacchetto r-base-dev include gli strumenti di sviluppo necessari per compilare pacchetti R dai sorgenti.

Verificare l'installazione

R --version

Dovresti vedere qualcosa come:

R version 4.4.x (2024-xx-xx) -- "Pile of Leaves"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu

Passaggio 4: Utilizzo di R

Avviare R in modalità interattiva

Per uso personale:

R

Per installare pacchetti disponibili a tutti gli utenti:

sudo -i R

Interfaccia R

Una volta in R, vedrai il prompt >. Ecco alcuni comandi di base:

# Visualizzare la versione
version

# Ottenere aiuto
help()

# Uscire da R
q()

Passaggio 5: Installazione di pacchetti da CRAN

R dispone di migliaia di pacchetti disponibili su CRAN (Comprehensive R Archive Network).

Installare un pacchetto

Nell'interprete R:

install.packages('nome_pacchetto')

Esempio: Installazione di pacchetti comuni

# Manipolazione dati
install.packages('dplyr')
install.packages('tidyr')
install.packages('data.table')

# Visualizzazione
install.packages('ggplot2')

# Machine Learning
install.packages('caret')
install.packages('randomForest')

# Report
install.packages('rmarkdown')
install.packages('knitr')

Caricare un pacchetto

library(ggplot2)

Esempio pratico con txtplot

Installiamo un pacchetto semplice per creare grafici ASCII:

# Installare il pacchetto
install.packages('txtplot')

# Caricare il pacchetto
library('txtplot')

# Creare un grafico semplice
txtplot(cars[,1], cars[,2], xlab = 'speed', ylab = 'distance')

Risultato:

    +----+--------+--------+-------+--------+--+
120 + * +
| |
d 100 + * +
i | * * |
s 80 + * * +
t | * * * |
a 60 + * +
n | * * * |
c 40 + * ** +
e | * * * * |
20 + * * * +
+----+--------+--------+-------+--------+--+
5 10 15 20 25
speed

Passaggio 6: Installazione di RStudio Server (opzionale)

RStudio Server fornisce un'interfaccia web per R.

Scaricare e installare RStudio Server

Per Debian/Ubuntu:

# Installare le dipendenze
sudo apt install -y gdebi-core

# Scaricare RStudio Server (verifica l'ultima versione su https://posit.co/download/rstudio-server/)
wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2024.04.2-764-amd64.deb

# Installare
sudo gdebi rstudio-server-2024.04.2-764-amd64.deb

Verificare lo stato

sudo systemctl status rstudio-server

Configurare il firewall

sudo ufw allow 8787/tcp
sudo ufw reload

Accedere a RStudio Server

Apri il browser e vai a:

http://IP_SERVER:8787

Accedi con le tue credenziali Linux.

Configurazione avanzata

Impostare un mirror CRAN predefinito

Crea o modifica il file .Rprofile:

nano ~/.Rprofile

Aggiungi:

options(repos = c(CRAN = "https://cloud.r-project.org"))

Installare pacchetti di sistema per R

Alcuni pacchetti R richiedono librerie di sistema:

# Per pacchetti con dipendenze comuni
sudo apt install -y libcurl4-openssl-dev libssl-dev libxml2-dev libfontconfig1-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev

Aumentare la memoria disponibile

Per calcoli pesanti, puoi aumentare il limite di memoria in R:

# Verificare la memoria disponibile
memory.limit()

# Su Linux, il limite è generalmente la RAM disponibile

Script R da riga di comando

Eseguire uno script R

Rscript mio_script.R

Esempio di script

Crea un file analisi.R:

#!/usr/bin/env Rscript

# Caricare i dati
data <- read.csv("dati.csv")

# Statistiche descrittive
summary(data)

# Salvare i risultati
write.csv(summary(data), "risultati.csv")

print("Analisi completata!")

Eseguilo:

Rscript analisi.R

Pacchetti popolari per dominio

Data Science

PacchettoDescrizione
tidyverseCollezione di pacchetti per data science
dplyrManipolazione dati
ggplot2Visualizzazione
readrImportazione dati
tidyrPulizia dati

Machine Learning

PacchettoDescrizione
caretFramework ML unificato
randomForestForeste casuali
xgboostGradient boosting
kerasDeep learning
mlr3Framework ML moderno

Statistica

PacchettoDescrizione
statsStatistiche di base (incluso)
lme4Modelli misti
survivalAnalisi di sopravvivenza
forecastSerie temporali

Risoluzione dei problemi

Errore durante l'installazione di un pacchetto

Se ottieni errori di compilazione:

# Installare gli strumenti di sviluppo
sudo apt install -y build-essential

# Installare le dipendenze comuni
sudo apt install -y libcurl4-openssl-dev libssl-dev libxml2-dev

Pacchetto non trovato

Verifica di usare il nome corretto del pacchetto su CRAN.

Memoria insufficiente

Se R esaurisce la memoria:

# Pulire l'ambiente
rm(list = ls())

# Forzare la garbage collection
gc()

Verificare i pacchetti installati

# Elencare tutti i pacchetti
installed.packages()

# Verificare se un pacchetto è installato
"ggplot2" %in% rownames(installed.packages())

Aggiornamento di R

Per aggiornare R all'ultima versione:

sudo apt update
sudo apt upgrade r-base r-base-dev
Attenzione

Dopo un aggiornamento importante di R, potrebbe essere necessario reinstallare i pacchetti.