python - 在 np.array 中以数字方式附加二进制数
问题描述
考虑以下示例数组:
a = np.array([0,1,1,0,1,1,1,0,1,0])
可以是任何dtype(int,float ...)
如果不使用讨厌的循环和字符串强制转换,我将如何获得以下输出?
np.array([0b01,0b10,0b11,0b10,0b10])
解决方案
a = a.astype(int)
output = a[0::2] * 2 + a[1::2]
给出您描述的数组(尽管它不会以二进制形式打印)。
推荐阅读
- react-native - 将带有条件的 ScrollView 转换为 Flatlist
- angular - 如何在 Spartacus 中检测当前用户的用户组
- c++ - pybind11::keep_alive 的逆向 API 是什么?
- php - 调用实体存储库上的方法时出现“警告:潜在的多态调用”
- mysql - React.js + Express:如何运行暗示多个数据库的 SQL 请求?
- django - 在 django 模型中,我如何在 django 中为布尔值创建视图
- docker - 由于用户输入导致 gcloud Docker 错误
- r - R创建用于比较行的循环
- apache-spark - Pyspark,当Column值以x开头时,写为y
- powershell - 有没有办法在构建管道期间通过 Nunit(或类似的)发布 PS 脚本分析器结果?