numpy.unpackbits

`numpy.` `unpackbits` (myarrayaxis=None)

Unpacks elements of a uint8 array into a binary-valued output array.

Each element of myarray represents a bit-field that should be unpacked into a binary-valued output array. The shape of the output array is either 1-D (if axis is None) or the same shape as the input array with unpacking done along the axis specified.

Parameters: myarray  : ndarray, uint8 type Input array. axis  : int, optional The dimension over which bit-unpacking is done. `None` implies unpacking the flattened array. unpacked  : ndarray, uint8 type The elements are binary-valued (0 or 1).

`packbits`
Packs the elements of a binary-valued array into bits in a uint8 array.

Examples

`>>> a = np.array([[2], [7], [23]], dtype=np.uint8) >>> a array([[ 2],  [ 7],  [23]], dtype=uint8) >>> b = np.unpackbits(a, axis=1) >>> b array([[0, 0, 0, 0, 0, 0, 1, 0],  [0, 0, 0, 0, 0, 1, 1, 1],  [0, 0, 0, 1, 0, 1, 1, 1]], dtype=uint8)`

import numpy as np
largest_number = 10

print(range(largest_number))
for i in range(largest_number):
print(i)
print(range, 'range')

print(np.array([range(largest_number)],dtype=np.uint8),'np.array([range(largest_number)],dtype=np.uint8)')
print(np.array([range(largest_number)],dtype=np.uint8).T,'np.array([range(largest_number)],dtype=np.uint8).T')

binary = np.unpackbits(
np.array([range(largest_number)],dtype=np.uint8),axis=1)
print(binary[0])

binary = np.unpackbits(
np.array([range(largest_number)],dtype=np.uint8).T,axis=1)
print(binary[0])
print(binary)

'''
range(0, 10)
0
1
2
3
4
5
6
7
8
9
<class 'range'> range
[[0 1 2 3 4 5 6 7 8 9]] np.array([range(largest_number)],dtype=np.uint8)
[[0]
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]] np.array([range(largest_number)],dtype=np.uint8).T
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0
1 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 0 0 0 0
0 0 1 0 0 1]
[0 0 0 0 0 0 0 0]
[[0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 1]
[0 0 0 0 0 0 1 0]
[0 0 0 0 0 0 1 1]
[0 0 0 0 0 1 0 0]
[0 0 0 0 0 1 0 1]
[0 0 0 0 0 1 1 0]
[0 0 0 0 0 1 1 1]
[0 0 0 0 1 0 0 0]
[0 0 0 0 1 0 0 1]]

---------------------

` `

0条评论