Paghihiwalay ng Array ng NumPy

Pagbububuwag ng NumPy array

Ang pagbububuwag ay ang kabaligtaran ng pagsasama-sama.

Pagsasama-sama (Joining) ay ang pagpagsama ng maraming array sa isang, ang pagbububuwag (Spliting) ay ang pagbububuwag ng isang array sa maraming.

Ginagamit namin array_split() Ibahagi ang array, ilagay ang pinagbabahagang array at ang bilang ng pagbubuhag sa kanya.

Halimbawa

Ibahagi ang array sa tatlong bahagi:

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

Run Halimbawa

Komento:Ang ibinabalik na halaga ay isang array na naglalaman ng tatlong array.

Kung ang mga elemento ng array ay mas maliit kaysa sa hiniling na bilang, ito ay gagawin ang aayusin mula sa dulo.

Halimbawa

Ibahagi ang array sa apat na bahagi:

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

Run Halimbawa

Mga Tagubilin:Mayroon din kami split() Ang paraan ay magagamit, ngunit kapag ang mga elemento ng pinagmulang array ay mas maliit kaysa sa hiniling na pagbubuhag, hindi ito ay aayusin ang mga elemento, tulad ng halimbawa sa itaas naarray_split() Normal na gumagana, ngunit split() Ay magiging baliw.

Pagbububuhag ng array

array_split() Ang ibinabalik ng paraan ay isang array na naglalaman ng bawat napagbubuhag na array.

Kung pinagbubuhag ang isang array sa tatlong array, maaari mong aksesin ang mga ito tulad ng alinmang elemento ng resulta:

Halimbawa

Pakikipag-ugnay sa napagbubuhag na array:

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])

Run Halimbawa

Pagbububuwag ng dalawang pataas na array

Gamitin ang kaparehong syntax sa pagbububuwag ng dalawang pataas na array.

Gamitin ang array_split() Mga paraan, ilagay ang array na ibabahagi at ang bilang na ibabahagi.

Halimbawa

Hihatiin ang 2-D array sa tatlong 2-D array.

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)

Run Halimbawa

Ang nakaraang halimbawa ay ibibigay ang tatlong 2-D array.

Higit pa, tingnan natin ang ibang halimbawa, kung saan ang bawat elemento ng 2-D array ay may tatlong elemento.

Halimbawa

Hihatiin ang 2-D array sa tatlong 2-D array.

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)

Run Halimbawa

Ang nakaraang halimbawa ay ibibigay ang tatlong 2-D array.

Bilang karagdagan, maaari mong tukoy ang axis na gagamitin para sa paghihiwalay.

Ang mga halimbawa sa ibaba ay ibibigay din ang tatlong 2-D array, ngunit sila ay nahati sa kabila ng hilera (axis=1).

Halimbawa

Hihatiin ang 2-D array sa tatlong 2-D array sa kabila ng hilera.

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)

Run Halimbawa

Isang ibang solusyon ay gamitin ang parehong hstack() Katulad Ng hsplit().

Halimbawa

Gamitin ang hsplit() para sa paghihiwalay ng 2-D array sa kabila ng hilera.

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)

Run Halimbawa

Mga Tagubilin:vsplit() At dsplit() Maaaring gamitin ang parehong vstack() At dstack() Katulad Na Alternatibong Paraan.