【python】复数情况下argmax和matlab中max函数的区别

若M是一个复数矩阵,在MATLAB中,执行以下语句:

[val,idx]=max(M)

得到的结果和python中执行下列语句:

np.argmax(M)

得到的结果是不相同的。

MATLAB中比较的是数据的模值大小,python比较的是幅角。

所以若想实现MATLAB中相同的效果,python中的语句应该写为:

np.argmax(np.abs(M))