按MatLab中的虚部排序

yan*_*n11 3 sorting matlab complex-numbers

所以我有一个包含复杂值的向量.我想按照升序的假想顺序对它们进行排序.有没有办法做到这一点?

根据排序文档,sort将按大小排序.

谢谢

Nic*_*ick 7

请尝试这样的事情:

a = [1 + 1i; 1 - 1i; 1 - 2*1i];
[sorted, idx] = sort(imag(a));
a = a(idx);

a = 

1.0000 - 2.0000i
1.0000 - 1.0000i
1.0000 + 1.0000i
Run Code Online (Sandbox Code Playgroud)

  • @ yankeefan11请注意,如果你只对索引感兴趣,最近版本的Matlab鼓励你这样调用:`[〜,idx] = sort(imag(a))`这样你就不会有一个未使用的变量. (2认同)