python - 矩阵转置(连接每两个索引)
问题描述
我有一个这样的矩阵:
[99,e5],
[fc,9a],
[31,ac],
[d2,03]
该数据是来自 PCM 音频的字节,16 位,因此每 2 个字节是一个样本。我需要得到一个这样的数组:
[99,fc,31,d2],
[e5,9a,ac,03]
最终将此数组解释为
[99fc,31d2],
[e59a,ac03]
我已经完成了循环,但它非常慢,我需要良好的性能,因为它是实时音频数据。
=== 编辑 ===
也许我解释得不好
我有
[b'\xa5\x00', b'\xfc\x00', b'\xfb\x0b', b'\x87\x01']
我需要得到
[b'\xa5\xfc', b'\xfb\x87'],
[b'\x00\x00', b'\x0b\x01']
解决方案
它仍然是一个 for 循环动作,但你可以这样做:
# First transpose
lst = np.array(lst).transpose()
# Now add elements
lst = [x+y for x,y in zip(lst[0::2], lst[1::2])]
推荐阅读
- bash - crontab 上的脚本未执行但可以自行执行
- django - 如何在 Django 中获取关注我的用户数量
- python - 在 NetworkX 中计算图形对象的拉普拉斯矩阵
- reactjs - 阻止单击一次 span 元素上的 onClick 事件
- akka-http - 如何使用 akka http 为 application/schema+json 创建 ContentType?
- json - Python API(JSON) 转 CSV
- javascript - 无法使用 nuxt,js 在 Strapi 中读取未定义的属性“url”
- python - 如何使用 Python (boto3) 确定哪些 EC2 实例具有 CloudWatch 代理?
- r - 如何在字符串中搜索以查找模式
- sql-server - “创建目录”在 SSIS 中显示为灰色