Numpy 2D tömb létrehozása

Numpy 2d Tomb Letrehozasa



A kétdimenziós Numpy tömb python-listák listájából kerül meghatározásra. Csakúgy, mint az egydimenziós Numpy tömbnek, a tömb minden elemének egyetlen típusúnak kell lennie. Ha egy NumPy tömb több típusból álló listákkal van deklarálva, akkor típuskényszer lép fel, és az értékeket a rendszer egyetlen típusba konvertálja. A típuskényszer az, amelyben az adattípusok egyikről a másikra konvertálódnak, ez implicit vagy automatikus. A kétdimenziós tömbökben a méretek kettőnél többek is lehetnek.

Egyszerű szavakkal, a kétdimenziós tömböt egy másik tömbön belüli tömbként definiálhatjuk. Az indexe „0”-val kezdődik, és a „-1” tömb méretére ér véget. A tömbökön belül n-szer lehet tömböt összeállítani. A kétdimenziós tömb mérete függőlegesen és vízszintesen is változtatható, mindkét irányban.

Szintaxis

A tömb deklarálásának szintaxisa a következő:







tömb_neve = [ r_arr ] [ c_arr ]

A tömb_neve a létrehozni kívánt tömb neve. Míg az „r_arr” a tömb sorai, a „c_arr” pedig a tömb oszlopa. Ez a szintaxis lehetővé teszi, hogy létrehozzuk azt a memóriahelyet, ahol a tömb tárolva lesz, vagy azt is mondhatjuk, hogy a memóriahely lefoglalható a tömb számára.



Van egy másik módszer a 2D tömb deklarálására:



tömb_neve = [ [ R1C1 , R1C2 , R1C3 , ... ] , [ R2C2 , R2C2 , R2C3 , ... ] , . . .. ]

A fenti szintaxisban a tömbnév a tömb neve, ahol az „R1C1”, „R2C1”, … n a tömb elemei, ahol az „R” a sorokat, a „c” pedig az oszlopokat jelöli. Ahogy az első kapcsos zárójelben is láthatjuk, a sorok száma változik, miközben az oszlopok változatlanok. Ennek az az oka, hogy a tömbön belül az oszlopokat több tömb használatával határozzuk meg, míg a sorokat a belső tömbökön belül definiáljuk.





01. példa: Kétdimenziós tömb létrehozása

Mutassunk egy gyakorlati példát egy kétdimenziós tömb létrehozására, és kapjunk jobb képet a kétdimenziós tömb létrehozásáról. 2D tömb létrehozásához először importáljuk a NumPy könyvtárunkat, amely lehetővé teszi számunkra, hogy megvalósítsunk néhány olyan csomagot, amelyeket a NumPy biztosít számunkra a tömb létrehozásához. Ezután inicializálunk egy változót, amely tartalmazza a kétdimenziós tömböt, hogy létrehozzunk egy tömböt. Átadjuk az np.array() függvényt, amely lehetővé teszi számunkra, hogy bármilyen típusú tömböt hozzunk létre, legyen az 1D, 2D vagy így tovább. Ennek a függvénynek több tömböt adunk át ezen a tömbön belül, ami lehetővé teszi egy 2-dimenziós tömb létrehozását.

Ahogy az alábbi képernyőképen is láthatjuk, a második sorban három tömböt adtunk át a függvénynek, ami azt jelenti, hogy három sorunk van, és ezeken a tömbökön belül mindegyiknek 6 elemet adtunk át, ami azt jelenti, hogy 6 oszlop van. Egy dolog, amit észre kell venni, az elemeket mindig szögletes zárójelben adjuk át, ami azt jelenti, hogy tömbelemeket adunk át, és láthatjuk, hogy több tömböt adtunk át egyetlen tömbön belül.



import zsibbadt mint például.

sor = például. sor ( [ [ 1 , két , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , tizenegy , 12 ] ] )

nyomtatás ( sor )

Végül egy print utasítás segítségével nyomtattuk ki a tömböt. Ahogy az alábbi képernyőképen látható, láthatjuk, hogy megjelenik a tömb, amely 3 sort és 6 oszlopot tartalmaz.

02. példa: Az értékek elérése

Miközben a 2D tömbök létrehozásának módszerét tanulmányoztuk, egy dolognak biztosan eszünkbe jutott: hogyan érhetjük el a 2D tömb elemeit? Bár a 2D tömb elemének elérése nem nagy probléma. A Numpy lehetővé teszi a tömbök elemeinek manipulálását egy egyszerű kódsor segítségével, amely a következő:

Sor [ sorindex ] [ oszlop index ]

A tömb annak a tömbnek a neve, amelyből hozzá kell férnünk vagy le kell kérnünk az adatokat, ahol a sorindex a sor memóriahelye. Az oszlopindex pedig az elérendő oszlop helye, tegyük fel, hogy a sor index „2” elemét és egy oszlop index „0” elemét kell elérnünk.

Amint az alábbi ábrán látható, először importáltuk a NumPy könyvtárat, hogy elérjük a NumPy csomagjait. Ezután deklaráltuk a „tömb” nevű változót, amely a 2D tömböt tartalmazza, majd átadtuk neki a benne tárolni kívánt értékeket. Először a tömböt úgy jelenítettük meg, ahogyan az inicializáltuk. Ezután az indexet tartalmazó tömböt átadtuk a print() utasításunknak, amely megjeleníti a teljes tömböt, amely a „2” indexen van tárolva. A következő kódsorban ismét átadtuk a két indexű tömböt a print() utasításnak. Az első a tömb sora, a második pedig a tömb oszlopa, amely „0” és „2”.

import zsibbadt mint például.

sor = például. sor ( [ [ 1 , két , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , tizenegy , 12 ] ] )

nyomtatás ( 'Tömb megjelenítése:' , sor )

nyomtatás ( 'A második sor megjelenítése:' , sor [ két ] )

nyomtatás ( 'Az első sor és a 2 oszlop elem megjelenítése:' , sor [ 0 ] [ két ] )

A következő kimenet kerül visszaadásra, miközben a kódfordító úgy nyomtatja ki a tömböt, ahogy van. Ezután a második sor a kód szerint. Végül a fordító azt az elemet adja vissza, amely a sorok „0” indexén, az oszlop esetében a „2” indexen van tárolva.

03. példa: Az értékek frissítése

A 2D tömbön belüli adatok vagy elemek létrehozásának vagy elérésének módszertanát már tárgyaltuk, de amikor módosítanunk kell a tömb elemeit, egyszerűen használhatjuk a NumPy csomagok által biztosított módszert, amely lehetővé teszi számunkra. a kívánt érték frissítéséhez egy tömbön belül.

Az érték frissítéséhez a következőket használjuk:

sor [ sor_index ] [ oszlop_index ] = [ értékeket ]

A fenti szintaxisban a tömb a tömb neve. A sorindex az a hely vagy hely, amelyet szerkeszteni fogunk. Az oszlopindex annak az oszlopnak a helye, ahol az érték frissül, ahol az érték az, amelyet hozzá kell adni a kívánt indexhez.

Amint látjuk, először importáljuk a NumPy könyvtárunkat. Majd deklarált egy 3×6 méretű tömböt, és átadta annak egész értékeit. Ezután a „21” értéket adtuk át a tömbnek, ami azt jelenti, hogy a „21” értéket a tömbben egy sor „0” pontján, egy oszlop „2” pontján szeretnénk tárolni, ami azt jelenti, hogy az indexben szeretnénk tárolni. az első sorból és a 3 rd a tömb oszlopa. Ezután nyomtassa ki mindkét tömböt, az eredetit és azt az elemet is, amelyet a tömbben tároltunk.

import zsibbadt mint például.

sor = például. sor ( [ [ 1 , két , 3 , 4 , 5 , 6 ] , [ 4 , 5 , 6 , 7 , 8 , 9 ] , [ 7 , 8 , 9 , 10 , tizenegy , 12 ] ] )

sor [ 0 ] [ két ] = huszonegy

nyomtatás ( 'Tömb megjelenítése:' , sor )

nyomtatás ( 'Az első sor és a 2 oszlop elem megjelenítése:' , sor [ 0 ] [ két ] )

Az alábbiakban látható módon az érték sikeresen frissül a tömbben egy egyszerű kódsor hozzáadásával, amelyet a NumPy csomag biztosít.

Következtetés

Ebben a cikkben elmagyaráztuk a kétdimenziós tömbök létrehozásának különböző módjait, és azt, hogy hogyan manipulálhatjuk őket a NumPy beépített funkcióival. Megbeszéltük, hogyan érhetjük el a tömb elemeit és frissíthetjük azokat. A Numpy lehetővé teszi többdimenziós tömbök létrehozását és kezelését egyetlen kódsor segítségével. A numpy tömbök világosabbak és hatékonyabbak, mint a python listák.