NumPy adalah perpustakaan yang kuat di Python yang banyak digunakan untuk perhitungan numerik dalam struktur data array dan matriks. Salah satu dari banyak fungsi yang ditawarkannya adalah paket bit, yang memungkinkan Anda untuk menyandikan data biner secara efisien di sepanjang sumbu yang ditentukan. Pada artikel ini, kita akan mengeksplorasi penggunaan fungsi packbits NumPy di sepanjang sumbu 1, dan membahas teknik dan aplikasinya. Sepanjang jalan, kami juga akan mempelajari perpustakaan dan fungsi terkait.
Memahami fungsi packbits NumPy
The paket bit function di NumPy adalah alat yang dirancang untuk mengompresi data biner dengan mengemas kelompok bit secara bersamaan. Ini sangat berguna saat bekerja dengan kumpulan besar data biner, karena dapat sangat mengurangi penggunaan memori dan meningkatkan efisiensi kode Anda. Fungsi ini beroperasi sepanjang sumbu tertentu, yang memungkinkan Anda untuk mengontrol arah di mana bit dikemas.
import numpy as np
# Example binary data array
binary_data = np.array([[0, 1, 1, 0, 1, 1, 1, 1],
[1, 0, 0, 1, 0, 0, 0, 1]])
packed_data = np.packbits(binary_data, axis=1)
print(packed_data)
Kode di atas menunjukkan penggunaan fungsi packbits untuk mengemas data biner sepanjang sumbu 1. Dengan menentukan sumbu 1, kami menginstruksikan NumPy untuk mengemas bit di sepanjang kolom larik masukan.
Penjelasan kode langkah demi langkah
1. Pertama, kita impor library NumPy dengan alias “np”:
import numpy as np
2. Selanjutnya, kita membuat contoh array data biner 2D, di mana setiap elemen dapat berupa 0 atau 1:
binary_data = np.array([[0, 1, 1, 0, 1, 1, 1, 1],
[1, 0, 0, 1, 0, 0, 0, 1]])
3. Kami kemudian memanggil fungsi packbits untuk mengemas data biner sepanjang sumbu 1:
packed_data = np.packbits(binary_data, axis=1)
4. Akhirnya, kami mencetak larik data yang dikemas yang dihasilkan:
print(packed_data)
Output dari kode ini akan menjadi array 2D yang berisi data biner yang dikemas:
[[179 241]
[137 17]]
Ini berarti bahwa data biner asli telah dikemas secara efisien di sepanjang sumbu yang ditentukan, memungkinkan pengurangan penggunaan memori dan peningkatan kinerja.
Fungsi serupa di perpustakaan terkait
Di luar paket, ada juga fungsi dan pustaka lain yang menawarkan fungsionalitas serupa. Beberapa contoh termasuk:
Pustaka binascii bawaan Python
The binascii library adalah bagian dari pustaka standar Python dan menyediakan metode untuk mengonversi antara biner dan berbagai representasi biner yang dikodekan ASCII. Salah satu fungsi yang ditawarkannya adalah hexify, yang dapat digunakan untuk mengonversi data biner menjadi representasi string heksadesimal.
import binascii binary_data = b'x00x01x01x00' hex_data = binascii.hexlify(binary_data) print(hex_data)
Dalam contoh ini, fungsi binascii.hexlify digunakan untuk mengonversi objek byte yang berisi data biner menjadi representasi string heksadesimal.
perpustakaan bitarray
Pustaka lain yang berguna untuk bekerja dengan data biner adalah bitarray perpustakaan. Pustaka ini menyediakan struktur data larik bit yang efisien yang dapat digunakan untuk memanipulasi dan menyimpan urutan bit yang besar.
from bitarray import bitarray binary_data = '01101111 10010001' bit_array = bitarray(binary_data) packed_data = bit_array.tobytes() print(packed_data)
Dalam contoh ini, kami membuat objek bitarray dari string biner dan kemudian menggunakan metode tobytes untuk mendapatkan data yang dikemas sebagai objek bytes.
Kesimpulannya, fungsi packbits NumPy adalah alat yang berharga untuk menyandikan data biner sepanjang sumbu tertentu, yang pada akhirnya membuat kode Anda lebih efisien dan menghemat memori. Selain itu, ada pustaka dan fungsi lain, seperti pustaka binascii dan pustaka bitarray, yang juga dapat membantu Anda bekerja dengan data biner.