Unire Array in NumPy
Unire o combinare array in NumPy è un’operazione comune quando si lavora con dati multidimensionali. NumPy offre diverse opzioni per effettuare queste operazioni, tra cui la concatenazione e l’impilamento verticale, orizzontale e in profondità . In questo articolo, esploreremo come unire array utilizzando NumPy, compresa la funzione concatenate
e le funzioni di impilamento.
Utilizzo di np.concatenate
(Concatenazione)
La funzione np.concatenate
permette di concatenare array lungo un asse specifico. Puoi specificare l’asse tramite il parametro axis
. Questa funzione è molto flessibile e ti permette di unire array con dimensioni diverse lungo l’asse desiderato.
Ecco un esempio di utilizzo di np.concatenate
per concatenare due array orizzontalmente:
import numpy as np
# Creazione di due array
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])
# Concatenazione orizzontale
concatenated_arr = np.concatenate((arr1, arr2.T), axis=1)
print(concatenated_arr)
# Restituisce:
# [[1 2 5]
# [3 4 6]]
In questo esempio, stiamo concatenando arr1
e arr2.T
(trasposto di arr2
) lungo l’asse delle colonne (axis=1).
Utilizzo di np.vstack
(Impilamento Verticale)
La funzione np.vstack
viene utilizzata per impilare gli array verticalmente lungo l’asse delle righe. Questo significa che gli array vengono uniti in alto o in basso. Gli array da unire devono avere lo stesso numero di colonne.
import numpy as np
# Creazione di due array
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])
# Impilamento verticale
stacked_arr = np.vstack((arr1, arr2))
print(stacked_arr)
# Restituisce:
# [[1 2]
# [3 4]
# [5 6]]
Utilizzo di np.hstack
(Impilamento Orizzontale)
La funzione np.hstack
viene utilizzata per impilare gli array orizzontalmente lungo l’asse delle colonne. Questo significa che gli array vengono uniti da sinistra a destra. Gli array da unire devono avere lo stesso numero di righe.
import numpy as np
# Creazione di due array
arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6]])
# Impilamento orizzontale
stacked_arr = np.hstack((arr1, arr2.T))
print(stacked_arr)
# Restituisce:
# [[1 2 5]
# [3 4 6]]
Utilizzo di np.dstack
(Impilamento in ProfonditĂ )
La funzione np.dstack
viene utilizzata per impilare gli array in profondità lungo l’asse della profondità . Questo è utile quando si lavora con array tridimensionali.
import numpy as np
# Creazione di due array tridimensionali
arr1 = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
arr2 = np.array([[[9, 10], [11, 12]], [[13, 14], [15, 16]]])
# Impilamento in profonditĂ
stacked_arr = np.dstack((arr1, arr2))
print(stacked_arr)
# Restituisce un array tridimensionale
Conclusioni
In conclusione, unire array in NumPy è un’operazione essenziale quando si lavora con dati multidimensionali. Puoi utilizzare la funzione np.concatenate
per concatenare array lungo un asse specifico o le funzioni np.vstack
, np.hstack
e np.dstack
per effettuare l’impilamento verticale, orizzontale o in profondità . La scelta della funzione dipenderà dalle tue esigenze specifiche e dalle dimensioni degli array da unire.