Vai al contenuto principale

Array in R

Scopri gli array in R, inclusa l'indicizzazione con esempi, insieme alla creazione e somma di matrici e alla funzione apply().
Aggiornato 29 set 2026  · 8 min leggi

Scopri con l'IA

ChatGPTClaudePerplexity

Un array è una struttura dati in grado di contenere dati multidimensionali. In R, gli array sono oggetti che possono contenere dati a due o più dimensioni. Ad esempio, nelle matrici quadrate ci possono essere due righe e due colonne e la dimensione può essere cinque. Gli array possono memorizzare valori di un solo tipo di dato. I dati possono essere a più dimensioni, con righe e colonne e dimensioni di una certa lunghezza.

Creazione di un array

La funzione array() crea un array che accetta un vettore, cioè i numeri, e la dimensione ("dim") come argomenti.

Vediamo un esempio in cui vengono creati due vettori chiamati "array1" e "array2".

vector1 =  c (5, 10, 15,20)
vector2 =  c (25, 30, 35, 40, 45, 50,55,60)

Puoi usare i due vettori sopra come input per un array in cui la dimensione è considerata 4 * 4, e vengono create due matrici o dati dimensionali.

final = array (c (array1, array2),dim =c(4,4,3))
print (final)

L'output del codice sopra è il seguente:

, , 1

     [,1] [,2] [,3] [,4]
[1,]    5   25   45    5
[2,]   10   30   50   10
[3,]   15   35   55   15
[4,]   20   40   60   20

, , 2

     [,1] [,2] [,3] [,4]
[1,]   25   45    5   25
[2,]   30   50   10   30
[3,]   35   55   15   35
[4,]   40   60   20   40

, , 3

     [,1] [,2] [,3] [,4]
[1,]   45    5   25   45
[2,]   50   10   30   50
[3,]   55   15   35   55
[4,]   60   20   40   60

Rinominiamo il nostro array in "Arr1" e "Arr2" usando "matrix.names". Inoltre, i nomi delle righe vengono cambiati in ("row1","row2") e i nomi delle colonne in ("column1","column2","column3") rispettivamente. La dimensione della matrice è di 2 righe e 3 colonne.

array1 =  c (9 , 18 )
array2 = c (27,36)
r.names = c ("column1","column2","column3")
c.names = c ("row1","row2")
m.names = c ("Arr1", "Arr2")

final = array (c (array1,array2), dim=c (2,3,2), dimnames=list (c.names, r.names, m.names))
print(final)

L'output del codice sopra è il seguente, con due righe e tre colonne. Inoltre, il valore nella colonna si ripete quando i valori finiscono:

, , Arr1

     column1 column2 column3
row1       9      27       9
row2      18      36      18

, , Arr2

     column1 column2 column3
row1      27       9      27
row2      36      18      36

Indicizzazione in un array

Un array è composto da elementi in modo multidimensionale, dove ogni elemento può essere accessibile per l'operazione. Gli elementi possono essere indicizzati usando '[]', mentre negli array simili a matrici ci sono righe e colonne che possono essere indicizzate con: mat[row, column]

Prendiamo un esempio in cui l'array contiene input vettoriali da 1 a 9. Ci sono tre righe e tre colonne e sono inclusi i valori da 1 a 9. 'c.names)' è il nuovo nome delle colonne che contiene i vettori ('c1', 'c2', 'c3') e 'r.names' sono i nuovi nomi delle righe ('r1', 'r2', 'r3'), anch'essi vettori.

a1=  c (1,2,3,4)
a2= c (5,6,7,8,9)
r.names = c ("c1","c2","c3")
c.names = c ("r1","r2","r3")
m.names = c ("first")

arr = array (c (a1,a2), dim=c (3,3,1), dimnames=list (c.names, r.names, m.names))
print(arr)
, , first

   c1 c2 c3
r1  1  4  7
r2  2  5  8
r3  3  6  9

L'output del codice sopra è il seguente:

 , , first

   c1 c2 c3
r1  1  4  7
r2  2  5  8
r3  3  6  9 

Come puoi vedere, sono state generate le matrici da 1 a 9 con dimensione 3 × 3 (righe × colonne) e i nomi di righe e colonne sono stati cambiati.

Vediamo come estrarre gli elementi nell'array con i seguenti esempi.

  1. Estraiamo il numero '7' dall'array 'arr' sopra.
arr[1,3,1]

7

L'output del codice sopra è 7. In 'arr[1,3,1]' si estrae la riga 1 con la colonna 3 e 1 indica il primo array 'arr'.

  1. Per accedere a 1, 'arr[1,1,1]' estrae la riga 1 con la colonna 1 e 1 indica il primo array 'arr'.
arr[1,1,1]

1

L'output del codice sopra è 1.

  1. Per accedere a più valori insieme, devi specificare l'intervallo che vuoi.
arr[1:2,1:2,1]
  c1 c2
r1 1 4
r2 2 5

Il codice sopra restituisce il seguente output, dove vengono estratti 2 righe, 2 colonne e 1 indica il primo array 'arr':

    c1    c2
r1    1    4
r2    2    5 
  1. Puoi accedere all'intero array 'arr' con la seguente sintassi, dove 'arr[ , ,1]' specifica di includere tutte le righe e le colonne, ciascuna separata da virgole e indicata dallo spazio. L'1 specifica l'array 'arr' da estrarre.
arr[ , ,1]
  c1 c2 c3
r1 1 4 7
r2 2 5 8
r3 3 6 9

Il codice sopra restituisce il seguente output, in cui sono presenti tutti gli elementi:

    c1    c2    c3
r1    1    4    7
r2    2    5    8
r3    3    6    9 
  1. Puoi ottenere l'intera seconda riga con il seguente codice, dove arr[2, ,1] prende la seconda riga con lo spazio, e 1 è l'array 'arr' da estrarre.
arr[2,,1]
c1
2
c2
5
c3
8

Il codice sopra restituisce il seguente output e stampa anche c1, c2, c3.

c1 2
c2 5
c3 8
  1. Puoi ottenere l'intera seconda colonna con il seguente codice, dove arr[,2,1] lo spazio con 2 indica la seconda colonna, e 1 è l'array 'arr' da estrarre.
mat[ ,2,1]
r1
4
r2
5
r3
6

Il codice sopra restituisce il seguente output e stampa anche r1, r2, r3.

r1 4
r2 5
r3 6

Creazione e somma di matrici

Creiamo due matrici chiamate mat1 e mat2 da 'arr[ , ,1]' in cui tutte le righe e le colonne di 'arr' vengono copiate.

mat1 = arr[,,1]
mat2 = arr[,,1]
   c1 c2 c3
r1  2  8 14
r2  4 10 16
r3  6 12 18 

Somma le due matrici 'mat1' e 'mat2' e salva il risultato in final. Viene anche stampato l'output.

final <- mat1+mat2
print(final)

L'output qui sotto mostra che ogni riga e colonna di mat1 e mat2 viene sommata elemento per elemento.

   c1 c2 c3
r1  2  8 14
r2  4 10 16
r3  6 12 18 

apply()

'apply()' è uno dei pacchetti R che include diverse funzioni che aiutano a scrivere codice in modo più semplice ed efficiente. Sotto vedrai un esempio di come può essere usato per calcolare la somma di due array diversi.

La sintassi di apply() è:
apply(x, margin, function)

Gli argomenti indicano che:
x: Un array o dati bidimensionali come matrici.
margin: Indica a quale margine applicare la funzione: c(1) per le righe, c(2) per le colonne e c(1,2) per righe e colonne.
function: Indica la funzione integrata di R o definita dall'utente da applicare ai dati forniti.

Creiamo un vettore chiamato 'array1' di lunghezza tre e 'array2' di lunghezza sei con il seguente codice.

array1 = c(5,10,15)
array2 = c(15,20,25,30,35,40)

Qui sotto puoi vedere che 'array()' accetta due vettori chiamati 'array1' e 'array2' con una dimensione di 3 righe, 3 colonne, e vengono create 2 matrici memorizzate in 'my. Array'.

my.Array <- array(c(array1,array2),dim = c(3,3,2))
print(my.Array)
, , 1

     [,1] [,2] [,3]
[1,]    5   15   30
[2,]   10   20   35
[3,]   15   25   40

, , 2

     [,1] [,2] [,3]
[1,]    5   15   30
[2,]   10   20   35
[3,]   15   25   40

Il codice sopra produce il seguente output, in cui vengono create due matrici 3 × 3 (righe × colonne).

, , 1

     [,1] [,2] [,3]
[1,]    5   15   30
[2,]   10   20   35
[3,]   15   25   40

, , 2

     [,1] [,2] [,3]
[1,]    5   15   30
[2,]   10   20   35
[3,]   15   25   40

'apply()' viene usata qui sotto per calcolare la somma delle due matrici per colonna.

final <- apply(my.Array, c(2), sum)
print(final)
[1]  60 120 210

Come puoi vedere sopra, si usa c(2) come margine: gli elementi della matrice in 'my. Array' vengono sommati per colonna per ottenere il seguente output.

60 120 210

Infine, 'apply()' è usata qui sotto per calcolare la somma delle due matrici per riga.

final <- apply(my.Array, c(1), sum)
print(final)
[1] 100 130 160

Come puoi vedere sopra, si usa c(1) come margine: gli elementi della matrice in 'my. Array' vengono sommati per riga per ottenere il seguente output.

100 130 160

Congratulazioni

Congratulazioni, sei arrivato alla fine di questo tutorial!

Hai imparato gli array di R insieme alla loro creazione, l'indicizzazione in un array con esempi, oltre alla creazione e somma di matrici e all'uso della funzione apply().

Se vuoi saperne di più su R, segui il corso Introduction to R di DataCamp.

Riferimenti:
R-Arrays
Funzione array in R e creazione di array in R

Argomenti
R
Data Science

Corsi su R

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