logo

numpy.concatenate() i Python

Funktionen concatenate() är en funktion från NumPy-paketet. Denna funktion kombinerar i huvudsak NumPy-matriser. Denna funktion används i princip för att sammanfoga två eller flera arrayer av samma form längs en specificerad axel. Det finns följande saker som är viktiga att tänka på:

  1. NumPys concatenate() är inte som en traditionell databaskoppling. Det är som att stapla NumPy-arrayer.
  2. Denna funktion kan fungera både vertikalt och horisontellt. Detta betyder att vi kan sammanfoga arrayer horisontellt eller vertikalt.
numpy.concatenate()

Funktionen concatenate() skrivs vanligtvis som np.concatenate(), men vi kan också skriva den som numpy.concatenate(). Det beror på hur man importerar numpy-paketet, antingen importera numpy som np eller importera numpy.

Syntax

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

Parametrar

1) (a1, a2, ...)

Denna parameter definierar sekvensen av arrayer. Här är a1, a2, a3 ... de arrayer som har samma form, utom i den dimension som motsvarar axeln.

list.sort java

2) axel: int(valfritt)

latex i fontstorlek

Den här parametern definierar axeln längs vilken matrisen ska sammanfogas. Som standard är dess värde 0.

Resultat

Det kommer att returnera en ndarray som innehåller elementen i båda arrayerna.

Exempel 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 

I ovanstående kod

  • Vi har importerat numpy med alias np.
  • Vi har skapat en array 'x' med funktionen np.array().
  • Sedan har vi skapat en annan array 'y' med samma np.array() funktion.
  • Vi har deklarerat variabeln 'z' och tilldelat det returnerade värdet för funktionen np.concatenate().
  • Vi har passerat arrayen 'x' och 'y' i funktionen.
  • Till sist försökte vi skriva ut värdet för 'z'.

I utgången visas värden för båda arrayerna, dvs. 'x' och 'y' enligt axeln=0.

Produktion:

sträng till jsonobject
 array([[ 1, 2], [ 3, 4], [12, 30]]) 

Exempel 2: numpy.concatenate() med axis=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 

Produktion:

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

Exempel 3: numpy.concatenate() med axis=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 

Produktion:

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

I exemplet ovan användes '.T' för att ändra raderna till kolumner och kolumner till rader.

Exempel 4: numpy.concatenate() med axis=Ingen

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

Produktion:

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

I exemplen ovan har vi använt funktionen np.concatenate(). Denna funktion är inte bevarad maskering av MaskedArray-ingångar. Det finns följande sätt genom vilket vi kan sammanfoga arrayerna som kan bevara maskering av MaskedArray-ingångar.

Exempel 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 

I ovanstående kod

  • Vi har importerat numpy med alias np.
  • Vi har skapat en array 'x' med funktionen np.ma.arrange().
  • Sedan har vi skapat en annan array 'y' med samma np.ma.arrange() funktion.
  • Vi har deklarerat variabeln 'z1' och tilldelat det returnerade värdet för funktionen np.concatenate().
  • Vi har deklarerat variabeln 'z2' och tilldelat det returnerade värdet för funktionen np.ma.concatenate().
  • Till sist försökte vi skriva ut värdet för 'z1' och 'z2'.

I utgången har värdena för både arrayerna 'z1' och 'z2' bevarat maskeringen av MaskedArray-ingången.

Produktion:

 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)