Vai al contenuto principale

Padroneggiare le strutture dati nel linguaggio di programmazione R

Leggi la nostra guida completa su come lavorare con le strutture dati in R: vettori, liste, array, matrici, fattori e data frame.
Aggiornato 29 set 2026  · 6 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

R, un popolare linguaggio di programmazione statistica pensato per la preparazione, l’analisi e la visualizzazione dei dati, è dotato di una serie di strutture dati ottimizzate per gestire in modo efficace diversi tipi di attività sui dati. Padroneggiare la varietà di strutture dati di R è la chiave per sbloccarne tutto il potenziale e trasformare i dati in insight convincenti.

Per iniziare, valuta di seguire il nostro corso Introduzione alla programmazione in R, che ti permette di mettere in pratica questi concetti con dataset reali. Immergiamoci. 

Cosa sono le strutture dati nel linguaggio R?

Le strutture dati in R aiutano a organizzare i dati per l’analisi. Possono essere semplici, contenendo un solo tipo di dato, oppure complesse, supportando tipi di dato diversi. Queste strutture sono pensate per esigenze specifiche che emergono nei progetti data-driven. Le principali strutture dati in R sono vettori, liste, matrici, array, fattori e data frame.

Strutture dati in RStrutture dati in R

I diversi tipi di strutture dati in R

Prendiamoci un momento per familiarizzare con le strutture dati in R. Nel frattempo, vedremo anche alcune funzioni comuni di R. 

Vettori in R

I vettori sono la forma più semplice di struttura dati in R. Sono una raccolta di elementi dello stesso tipo, come numerico, carattere o logico.

R è progettato per lavorare bene con i vettori ed è pensato in particolare per le cosiddette operazioni vettorializzate. Questo significa che puoi applicare una funzione a un vettore senza dover ciclare esplicitamente sui suoi elementi. Ad esempio, sommare due vettori aggiunge gli elementi corrispondenti in modo più rapido e conciso rispetto a farlo elemento per elemento con i loop.

Qui creiamo tre vettori per i tipi numerico, carattere e logico usando la funzione c().

numeric_vector = c(10, 20, 30)character_vector = c("apple", "banana", "cherry")logical_vector = c(TRUE, FALSE, TRUE)

print(numeric_vector)print(character_vector)print(logical_vector)

tre vettori di esempio in REsempi di vettori in R


Puoi accedere agli elementi del vettore usando le parentesi quadre.

# Access the first 
elementprint(numeric_vector[1])

# Access multiple elements
print(character_vector[c(1, 3)])

Accesso agli elementi di un vettore in RAccesso agli elementi di un vettore in R


Puoi anche eseguire operazioni matematiche e logiche con i vettori.

# Adding a scalar value to the vector
print(numeric_vector + 2)

# Multiplying elements by a scalar
print(numeric_vector * 10)

# Perform logical operations - Check which elements are greater than 15
print(numeric_vector > 15)

Operazioni sui vettori in ROperazioni sui vettori in R

Altre operazioni importanti includono somma, media e ricerca dei valori minimo e massimo. 

# Summation
print(sum(numeric_vector))

# Mean
print(mean(numeric_vector))

# Max and min
print(max(numeric_vector))
print(min(numeric_vector))

Output delle funzioni base di ROutput delle funzioni base di R

Matrici in R

Le matrici sono array bidimensionali che memorizzano dati di un unico tipo. Sono particolarmente utili per i calcoli matematici. In R, puoi creare una matrice usando la funzione matrix().

my_matrix <- matrix(1:9, nrow=3, ncol=3)print(my_matrix)

Creare una matrice in RCreare una matrice in R

Puoi accedere agli elementi, alle righe, alle colonne o a sottoinsiemi della matrice usando gli indici.

# Access the element in the first row and second column 
print(my_matrix[1,2]) 

# Access the second row 
print(my_matrix[2,]) 

# Access the third column 
print(my_matrix[,3])

Accesso agli elementi di una matrice in R

Puoi anche eseguire operazioni matematiche sulle matrici.

another_matrix <- matrix(9:1, nrow=3, ncol=3)

# Element-wise addition
print(my_matrix + another_matrix)

# Element-wise subtraction
print(my_matrix - another_matrix)

# Element-wise multiplication
print(my_matrix * another_matrix)

# Element-wise division
print(my_matrix / another_matrix)

Operazioni matematiche sulle matrici in R

Operazioni matematiche sulle matrici in R


Array in R

Gli array sono un’estensione delle matrici e possono avere più di due dimensioni, offrendo un modo efficiente per memorizzare dati multidimensionali. Puoi creare un array in R usando la funzione array().

L’argomento dim = c(2, 2, 2) imposta le dimensioni dell’array. In questo caso, le dimensioni indicano che l’array deve avere tre dimensioni (un array 3D), strutturato come 2 righe, 2 colonne e 2 livelli (o profondità). L’output del codice sopra è mostrato di seguito. Puoi approfondire gli array nella nostra esercitazione Array in R.

my_array = array(1:8, dim = c(2, 2, 2))
print(my_array)

Creare un array in R

Liste in R

Le liste sono strutture dati versatili in R che possono contenere un mix di oggetti di tipi e dimensioni diversi. Puoi creare una lista usando la funzione list().

my_list <- list(name="DataCamp", year=2024, scores=c(80, 90, 85), active=TRUE)

print(my_list)

stampare il contenuto di una lista in R

Il contenuto di una lista in R

Una volta creata la lista, puoi accedere ai suoi elementi usando gli indici oppure il nome.

print(my_list[[3]])
print(my_list$name)
print(my_list$scores)

Accesso agli elementi di una lista in RAccesso agli elementi di una lista in R

Fattori in R

A differenza di vettori, matrici o liste, i fattori non definiscono una struttura di memorizzazione dei dati, ma descrivono come i dati devono essere trattati all’interno di queste strutture. Quindi, i fattori possono essere considerati un tipo di dato analogo ai tipi interi o carattere.

Ho incluso i fattori nell’elenco perché sono fondamentali per gestire i dati categoriali nell’ecosistema di R, soprattutto in scenari che coinvolgono tecniche statistiche in cui la distinzione tra variabili categoriali e continue è significativa. Questo è diverso da Python, che richiede la conversione delle caratteristiche categoriali in numeriche tramite codifica dummy o one-hot. 

Puoi creare fattori usando la funzione factor() come mostrato di seguito:

gender <- factor(c("male", "female", "female", "male"))
print(gender)

Fattori in R

Fattori in R

I fattori sono anche memorizzati come livelli e possono essere ordinati o non ordinati. 

levels(gender) <- c("Female", "Male") 
print(gender)

Livelli di un fattore in R

Livelli di un fattore in R

Se vuoi osservare la distribuzione della variabile fattoriale, puoi usare la funzione summary(). L’output mostra che ci sono due occorrenze ciascuna per Female e Male.

summary(gender)

Riepilogo in RRiepilogo in R

Data frame in R

I data frame sono la struttura dati più popolare e utilizzata in R. Sono particolarmente comodi perché possono contenere tipi di dato diversi in colonne diverse. Puoi considerarli simili a tabelle in un database o a file CSV, poiché archiviano e gestiscono i dati in un formato bidimensionale, quadrato o rettangolare.

Puoi creare un data frame con il comando data.frame().

data_frame <- data.frame( Names = c("Kiran", "Ajey", "Carol"), Age = c(25, 30, 35), Gender = c("Female", "Male", "Female"))

# Printing the data frame
print(data_frame)

Un data frame in RUn data frame in R


Puoi accedere al contenuto del data frame in vari modi, per colonne o per righe.

# Prints all names - use the $ sign 
print(data_frame$Names) 

# Access the first row 
print(data_frame[1, ]) 

# Access the second column 
print(data_frame[, 2])

Gli elementi di un data frame in RGli elementi di un data frame in R


I data frame sono molto utili nella preparazione e analisi dei dati perché supportano un’ampia gamma di operazioni come sottoimpostazione e ordinamento, e offrono un modo semplice per stampare statistiche descrittive.

Creare un sottoinsieme di un data frame in R

subset_female <- data_frame[data_frame$Gender == 'Female', ]
print(subset_female)

Un sottoinsieme di un data frame in RUn sottoinsieme di un data frame in R


Ordinare un data frame in R

# Sorting
data_frame <- data_frame[order(data_frame$Age), ]
print(data_frame)

Un data frame ordinato in RUn data frame ordinato in R


Riepilogare un data frame in R

# Statistical summary
summary(data_frame)

Riepilogo descrittivo o statistico in RRiepilogo descrittivo o statistico in R


Dagli output sopra puoi vedere quanto sia semplice eseguire operazioni sui data frame in R. Man mano che approfondisci l’analisi dei dati, scoprirai che i data frame sono incredibilmente versatili e potenti per manipolazione, analisi e visualizzazione dei dati. Se vuoi esplorare altre funzionalità, dai un’occhiata alla nostra esercitazione Data frame in R. 

Proseguire con R

Questo tutorial ti ha fornito una panoramica delle diverse strutture dati in R e del loro impiego in situazioni reali di analisi dei dati. Padroneggiare queste strutture migliorerà le tue capacità analitiche, permettendoti di gestire e analizzare efficacemente i dati.

Proseguendo il tuo percorso, scoprirai che R è un linguaggio di programmazione unico, rinomato per le sue robuste capacità statistiche e le librerie estese. È un investimento prezioso per chiunque sia curioso del mondo dell’analisi dei dati. 

Per altri tutorial su R, consulta i seguenti link:

Se vuoi saperne di più, puoi leggere le nostre Domande e risposte per colloqui su R, un’ottima risorsa se ti stai preparando a un’intervista o stai semplicemente imparando. L’articolo offre un’ampia gamma di domande e risposte che ti aiuteranno a individuare eventuali lacune nelle tue conoscenze lungo il percorso. 


Vikash Singh's photo
Author
Vikash Singh
LinkedIn

Professionista esperto in data science, intelligenza artificiale, analytics e strategia dei dati.

Argomenti
R
Analisi dei dati

Impara R con DataCamp

Corso

Introduzione a R

4 ore
3.1M
Impara le basi dell'analisi dei dati in R, compresi vettori, liste e data frame, e fai pratica con R con set di dati reali.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

Mostra AltroMostra Altro