python - Python:将复杂数组转换为极坐标形式
问题描述
我有一个形状为 (300,300) 的 np.array,其复数值为 a+bj。我想将每个元素转换为极坐标形式 R exp{j O}
我试过了
cmath.polar(data)
但不适用于数组,所以我尝试类似的东西
complexe = np.zeros((len(data),len(data[0])))
count_arr = 0
for arr in data:
count_item = 0
for itm in arr:
complexe[count_arr][count_item] = cmath.polar(itm)
count_item = count_item +1
count_arr = count_arr +1
它不起作用,因为 cmath.polar 的输出是一个元组(我认为)。
我是python的初学者,所以欢迎任何帮助!
解决方案
您可以直接在 numpy 中获取 R 和 O:
R = np.abs(z), O = np.angle(z)
推荐阅读
- python - 另一个“进程以退出代码-1073740791(0xC0000409)完成”缩小到QPixmap
- python - 需要从 python 中的两个数据框创建水平条形图。已尝试连接两个数据框以创建图表,但有一些错误
- python - 使用python将tiff文件列表合并为一个
- reactjs - 使用反应获取嵌套对象的第一个键
- ubuntu - 如何从 ubuntu 禁用密钥?
- php - 带有负前瞻的 htaccess 重定向
- swift - 从 firebase 获取数据时,SwiftUI 小部件未调试
- kubernetes - 如何通过端口转发在种类上进行罕见的核心快速入门?
- apache-spark - 如何从主节点访问远程工作节点上的数据集?
- python - 从嵌套的 Json 创建单独的 Python 字典