logo

numpy.concatenate() in Python

La funzione concatenate() è una funzione del pacchetto NumPy. Questa funzione combina essenzialmente insieme gli array NumPy. Questa funzione viene utilizzata fondamentalmente per unire due o più array della stessa forma lungo un asse specificato. Ci sono le seguenti cose che è essenziale tenere a mente:

  1. Concatenate() di NumPy non è come un tradizionale join di database. È come impilare gli array NumPy.
  2. Questa funzione può operare sia in verticale che in orizzontale. Ciò significa che possiamo concatenare gli array insieme orizzontalmente o verticalmente.
numpy.concatenate()

La funzione concatenate() è solitamente scritta come np.concatenate(), ma possiamo anche scriverla come numpy.concatenate(). Dipende dal modo di importare il pacchetto numpy, rispettivamente importare numpy come np o importare numpy.

Sintassi

 numpy.concatenate((a1, a2, ...), axis) 

Parametri

1) (a1, a2, ...)

Questo parametro definisce la sequenza degli array. Qui a1, a2, a3... sono gli array che hanno la stessa forma, tranne che nella dimensione corrispondente all'asse.

ciclo di vita sdlc

2) asse: int (opzionale)

Questo parametro definisce l'asse lungo il quale verrà unito l'array. Per impostazione predefinita, il suo valore è 0.

Risultato

Restituirà un ndarray contenente gli elementi di entrambi gli array.

i primi muker

Esempio 1: numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y)) z 

Nel codice sopra

  • Abbiamo importato Numpy con il nome alias np.
  • Abbiamo creato un array 'x' utilizzando la funzione np.array().
  • Quindi, abbiamo creato un altro array 'y' utilizzando la stessa funzione np.array().
  • Abbiamo dichiarato la variabile 'z' e assegnato il valore restituito dalla funzione np.concatenate().
  • Abbiamo passato l'array 'x' e 'y' nella funzione.
  • Infine, abbiamo provato a stampare il valore di 'z'.

Nell'output, i valori di entrambi gli array, ovvero 'x' e 'y', vengono visualizzati secondo l'asse=0.

Produzione:

 array([[ 1, 2], [ 3, 4], [12, 30]]) 

Esempio 2: numpy.concatenate() con asse=0

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=0) z 

Produzione:

 array([[ 1, 2], [ 3, 4], [12, 30]]) 

Esempio 3: numpy.concatenate() con asse=1

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y.T), axis=1) z 

Produzione:

miglior sorriso del mondo
 array([[ 1, 2, 12], [ 3, 4, 30]]) 

Nell'esempio sopra, la '.T' viene utilizzata per modificare le righe in colonne e le colonne in righe.

Esempio 4: numpy.concatenate() con axis=None

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=None) z 

Produzione:

intento intento
 array([ 1, 2, 3, 4, 12, 30]) 

Negli esempi precedenti, abbiamo utilizzato la funzione np.concatenate(). Questa funzione non mantiene il mascheramento degli input MaskedArray. Esiste il seguente modo attraverso il quale possiamo concatenare gli array che possono preservare il mascheramento degli input MaskedArray.

Esempio 5: np.ma.concatenate()

 import numpy as np x=np.ma.arange(3) y=np.arange(3,6) x[1]=np.ma.masked x y z1=np.concatenate([x,y]) z2=np.ma.concatenate([x,y]) z1 z2 

Nel codice sopra

  • Abbiamo importato Numpy con il nome alias np.
  • Abbiamo creato un array 'x' utilizzando la funzione np.ma.arrange().
  • Quindi, abbiamo creato un altro array 'y' utilizzando la stessa funzione np.ma.arrange().
  • Abbiamo dichiarato la variabile 'z1' e assegnato il valore restituito dalla funzione np.concatenate().
  • Abbiamo dichiarato la variabile 'z2' e assegnato il valore restituito dalla funzione np.ma.concatenate().
  • Infine, abbiamo provato a stampare il valore di 'z1' e 'z2'.

Nell'output, i valori di entrambi gli array 'z1' e 'z2' hanno conservato il mascheramento dell'input MaskedArray.

Produzione:

 masked_array(data=[0, --, 2], mask=[False, True, False], fill_value=999999) array([3, 4, 5]) masked_array(data=[0, 1, 2, 3, 4, 5], mask=False, fill_value=999999) masked_array(data=[0, --, 2, 3, 4, 5], mask=[False, True, False, False, False, False], fill_value=999999)