Home » python » NumPy Array Split

NumPy Array Split

by Catur Kurnia Sari
by Catur Kurnia Sari

Split adalah operasi kebalikan dari join (menggabungkan).

Join berarti menggabungkan beberapa array menjadi satu dan Split berarti memecah satu array menjadi beberapa bagian.

Kita dapat menggunakan array_split() untuk memisahkan array, kita pass array yang ingin dipisahkan dan jumlah pemisahan.

Contoh:
Pisahkan array menjadi 3 bagian

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6])

newarr = np.array_split(arr, 3)

print(newarr)

Catatan: Nilai yang dikembalikan adalah array yang berisi tiga array.

Jika array memiliki lebih sedikit elemen dari yang dibutuhkan, array akan menyesuaikan dengan akhir yang sesuai.

Contoh:
Pisahkan array menjadi 4 bagian

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6])

newarr = np.array_split(arr, 4)

print(newarr)

Catatan: NumPy juga memiliki metode split() yang tersedia tetapi tidak akan menyesuaikan elemen ketika elemen dalam array sumber kurang untuk pemisahan seperti pada contoh di atas, array_split() bekerja dengan baik tetapi split() akan gagal.

Pisahkan Menjadi Array

Nilai yang dikembalikan dari metode array_split() adalah array yang berisi setiap pemisahan sebagai array.

Jika kita membagi array menjadi 3 array, maka kita dapat mengakses array terpisah dari hasil seperti elemen array pada umumnya.

Contoh:
Akses array yang dipisahkan

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

Memisahkan Array 2-D

Gunakan sintaks yang sama saat memisahkan array 2-D.

Gunakan metode array_split(), berikan array yang ingin dipisahkan dan jumlah pemisahan yang ingin dilakukan.

Contoh:
Pisahkan array 2-D menjadi tiga array 2-D

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)

Contoh di atas mengembalikan nilai tiga array 2-D.

Mari kita lihat contoh lain, kali ini setiap elemen dalam array 2-D berisi 3 elemen.

Contoh:
Pisahkan arrray 2-D menjadi tiga array 2-D

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)

Contoh di atas mengembalikan tiga array 2-D.

Selain itu, kita dapat menentukan sumbu mana yang ingin dilakukan pemisahan.

Contoh di bawah ini juga mengembalikan tiga array 2-D, tetapi dipisahkan di sepanjang baris (sumbu = 1).

Contoh:
Pisahkan array 2-D menjadi tiga array 2-D di sepanjang baris.

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)

Solusi alternatif menggunakan hsplit() kebalikan dari hstack().

Contoh:
Gunakan metode hsplit() untuk membagi array 2-D menjadi tiga array 2-D di sepanjang baris

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)

Catatan: Solusi alternatif serupa untuk vstack() dan dstack() juga tersedia sebagai vsplit() dan dsplit().

You may also like