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
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().