我有2-D变量(一个numpy蒙面数组,每个元素代表一个"像素"),其值(整数)必须作为二进制文件读取到" unpack"它包含的信息(第0位表示这一点,第1至第3位表示等等......)。
我最终想要进行测试(使用numpy"其中")来检查每个像素是否符合某些条件。
我可能需要将整数转换为二进制表示。
例如,位4到6是否具有值' 101':
np.where(my_array_of_binaries_as_strings[-7:-4] == '101', True, False)
是否有一种简单有效的方法可以将numpy十进制数组(整数或短数)转换为二进制表示数组(字符串,列表,整数,等等......)? python函数" bin"不适用于数组。
提前谢谢! ;)
答案 0 :(得分:3)
我认为您根本不需要将它们转换为字符串。你可以这样做:
target = 0b00010100
target_mask = 0b00011100
np.where(my_array_of_binaries & target_mask == target, True, False)