NumPy-taulukon erottaminen

Jaa NumPy-taulukko

Jako on yhdistämisen vastakohta.

Yhdistäminen (Joining) on useiden taulukkojen yhdistäminen yhdeksi, jaetun (Spliting) on yhden taulukon jakaminen useiksi.

Käytämme array_split() Jaa taulukko, johon halutaan jakaa taulukko ja jakojen määrä.

Esimerkki

Jaa taulukko 3 osaan:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr = np.array_split(arr, 3)
print(newarr)

Suorita esimerkki

Huomautus:Palautusarvo on taulukko, joka sisältää kolme taulukkoa.

Jos taulukon elementit ovat vähemmän kuin vaadittu määrä, se mukauttaa vastaavasti lopusta.

Esimerkki

Jaa taulukko 4 osaan:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr = np.array_split(arr, 4)
print(newarr)

Suorita esimerkki

Vinkki:Meillä on myös split() Menetelmä on käytettävissä, mutta kun lähtötaulukon elementit ovat vähäiset jaetaan, se ei mukautu elementtejä, kuten edellä olevassa esimerkissä.array_split() Toimii normaalissa tilassa, mutta split() Epäonnistuu.

Jaetaan taulukko

array_split() Menetelmän palauttama arvo on taulukko, joka sisältää jokaisen jaetun taulukon.

Jos jaetaan taulukko 3 osaan, voidaan ne tarkastella samalla tavalla kuin minkä tahansa taulukon elementtejä:

Esimerkki

Käy läpi jaetut taulukot:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
newarr = np.array_split(arr, 3)
print(newarr[0])
print(newarr[1])
print(newarr[2])

Suorita esimerkki

Jaetaan kaksidimensionaalisia taulukoita

Kun jaetaan kaksidimensionaalisia taulukoita, käytä samaa syntaksia.

Käytä array_split() Metodi, syötä haluamaasi jaetaan taulukko ja haluamaasi jaetun määrän.

Esimerkki

Jaa tämä 2-D taulukko kolmeen 2-D taulukkoon.

import numpy as np
arr = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10], [11, 12]])
newarr = np.array_split(arr, 3)
print(newarr)

Suorita esimerkki

Edellisessä esimerkissä palautetaan kolme 2-D taulukkoa.

Tarkastellaan toista esimerkkiä, jossa 2-D taulukon jokainen elementti sisältää 3 elementtiä.

Esimerkki

Jaa tämä 2-D taulukko kolmeen 2-D taulukkoon.

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.array_split(arr, 3)
print(newarr)

Suorita esimerkki

Edellisessä esimerkissä palautetaan kolme 2-D taulukkoa.

Lisäksi voit määrittää, minkä akselin mukaan haluat jakaa.

Alla oleva esimerkki palauttaa kolme 2-D taulukkoa, mutta ne ovat rinnakkain (axis=1) jaetut.

Esimerkki

Rippiä rinnakkain tämä 2-D taulukko kolmeen 2-D taulukkoon.

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.array_split(arr, 3, axis=1)
print(newarr)

Suorita esimerkki

Toinen ratkaisu on käyttää hstack() Päinvastoin hsplit().

Esimerkki

Käytä hsplit() -menetelmää jakamaan 2-D taulukko kolmeen 2-D taulukkoon.

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]])
newarr = np.hsplit(arr, 3)
print(newarr)

Suorita esimerkki

Vinkki:vsplit() ja dsplit() Voit käyttää samanlaisia vstack() ja dstack() Samankaltaiset vaihtoehtoiset menetelmät.