Vai al contenuto principale

Come trasporre una matrice in R: un tutorial rapido

Scopri tre metodi per trasporre una matrice in R in questo tutorial rapido
Aggiornato 29 set 2026

Scopri con l'IA

ChatGPTClaudePerplexity

Trasporre le matrici è un’operazione fondamentale di manipolazione dei dati nell’ambiente di programmazione R. In questo tutorial, ti guiderò su come trasporre in modo efficace le matrici in R, mostrando diversi metodi per farlo. Iniziamo!

La risposta rapida: come trasporre una matrice in R

Se hai fretta, il modo più veloce per trasporre una matrice in R è usare la funzione t(). La funzione t() fa parte di R base e offre un modo immediato per trasporre una matrice. Ecco un semplice esempio:

# Creating a sample matrix
my_matrix <- matrix(1:6, nrow = 2, ncol = 3)
print(my_matrix)
      [,1] [,2] [,3]
[1,]    1    3    5
[2,]    2    4    6
# Transposing the matrix
transposed_matrix <- t(my_matrix)
print(transposed_matrix)
      [,1] [,2]
[1,]    1    2
[2,]    3    4
[3,]    5    6

Che cos’è la trasposizione?

Trasporre una matrice significa scambiare righe e colonne, trasformando i dati delle righe in dati delle colonne e viceversa. Questa operazione è comunemente usata nella manipolazione dei dati per ristrutturare i dataset, rendendoli più adatti ad analisi o visualizzazioni specifiche. Per esempio, considera una matrice che contiene le temperature giornaliere di diverse città. Trasporre questo data frame invertirebbe le righe (giorni) con le colonne (città), semplificando potenzialmente operazioni successive come il plotting o l’analisi statistica.

Giorno

New York

Lost Angeles

Chicago

Giorno 1

22

25

18

Giorno 2

20

28

21

Un dataset meteorologico di esempio per 3 città prima della trasposizione

Città

Giorno 1

Giorno 2

New York

22

20

Los Angeles

25

28

Chicago

18

21

Un dataset meteorologico di esempio per 3 città dopo la trasposizione

Tre metodi per trasporre una matrice in R

Dato la nostra matrice di temperature giornaliere per diverse città, vediamo come trasporla usando vari metodi in R.

Metodo n. 1: come trasporre una matrice in R usando R base

Il metodo più semplice per trasporre una matrice in R è usare la funzione t() di R base, come mostrato in precedenza. È efficiente e diretto, ed è l’opzione ideale per trasporre velocemente matrici senza pacchetti aggiuntivi.

# Assume that temparature_matrix is already predefined
print(temperature_matrix)
      New_York Los_Angeles Chicago
Day 1       22          20      25
Day 2       28          18      21
# Transpose temperature_matrix
transposed_matrix <- t(temperature_matrix)

print(transposed_matrix)
            Day 1 Day 2
New_York      22    28
Los_Angeles   20    18
Chicago       25    21

Metodo n. 2: trasporre una matrice in R usando il tidyverse

Il tidyverse è un insieme potente di strumenti in R che rende il lavoro con i dati efficiente e coerente. Anche se il tidyverse è in genere usato con i data frame, puoi convertire una matrice in un data frame e poi usare tidyr per "trasporla" tramite pivot. Questo è particolarmente utile se stai già usando il tidyverse per analizzare i dati.

library(tidyr)
library(dplyr)
library(tibble)

# Converting the matrix to a data frame for tidyverse manipulation
temperature_df <- as.data.frame(temperature_matrix)

# "Transposing" the matrix by converting to long then wide format
transposed_df <- temperature_df %>%
  rownames_to_column(var = "Day") %>%
  pivot_longer(-Day, names_to = "City", values_to = "Temperature") %>%
  pivot_wider(names_from = City, values_from = Temperature)

print(transposed_df)
# A tibble: 2 × 4
  Day   New_York Los_Angeles Chicago
  <chr>    <dbl>       <dbl>   <dbl>
1 Day 1       22          20      25
2 Day 2       28          18      21

Metodo n. 3: trasporre una matrice in R usando data.table

In modo simile all’approccio con il tidyverse, data.table può lavorare con data frame o data table. Ecco come potresti trasporre una matrice convertendola prima in una data table:

library(data.table)

# Converting the matrix to a data.table
temperature_dt <- as.data.table(temperature_matrix, keep.rownames = "Day")

# Transposing the matrix by melting and dcasting (similar to pivot_longer and pivot_wider)
transposed_dt <- melt(temperature_dt, id.vars = "Day") %>%
  dcast(variable ~ Day, value.var = "value")

print(transposed_dt)
      variable Day 1 Day 2
1:    New_York    22    28
2: Los_Angeles    20    18
3:     Chicago    25    21

Considerazioni finali

Trasporre le matrici è una competenza fondamentale nella programmazione R. Che tu lavori con R base, con tidyr all’interno del tidyverse, o con il pacchetto data.table, R offre opzioni flessibili per adattarsi alle tue esigenze di dati. Se vuoi approfondire, dai un'occhiata alla nostra cheat sheet Reshaping Data with tidyr in R o, meglio ancora, inizia con il percorso di competenze Data Manipulation in R.


Adel Nehme's photo
Author
Adel Nehme
LinkedIn

Adel è un formatore e speaker in Data Science, nonché VP dei Media presso DataCamp. Adel ha pubblicato diversi corsi e sessioni di formazione live su analisi dei dati, machine learning e data engineering. È appassionato di diffondere competenze e alfabetizzazione sui dati all'interno delle organizzazioni e di esplorare l'intersezione tra tecnologia e società. Ha un MSc in Data Science and Business Analytics. Nel tempo libero, lo trovi spesso in compagnia del suo gatto Louis.

Argomenti
R

Continua oggi il tuo percorso con R!

Programma

Fondamenti di programmazione R

22 ore
Migliora le tue abilità di programmazione in R! Impara a lavorare con le strutture dati più comuni, a ottimizzare il codice e a scrivere le tue funzioni.
Vedi i dettagliRight Arrow
Inizia Il Corso
Mostra altroRight Arrow
Correlato

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

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

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