如何解决将交错的NumPy整数数组转换为complex64的最快方法是什么?
| 我的输入数据流交错了实整数和虚整数。将它们转换为complex64值是我程序中最慢的操作。这是我目前的方法:import numpy as np
a = np.zeros(1000000,dtype=np.int16)
b = np.complex64(a[::2]) + np.complex64(1j) * np.complex64(a[1::2])
在不进行C扩展或不使用cython的情况下,我可以做得更好吗?如果我做不到更好,那么使用其中一种技术最简单的方法是什么?
解决方法
[~]
|1> import numpy as np
[~]
|2> a = np.zeros(1000000,dtype=np.int16)
[~]
|3> b = a.astype(np.float32).view(np.complex64)
[~]
|4> b.shape
(500000,)
[~]
|5> b.dtype
dtype(\'complex64\')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。