サイズ 3XN の行列があります。行列の各列は 3 次元の点です。重複を削除したいのですが、最初の 2 次元の重複だけを気にします。重複するポイントが存在する場合 (つまり、x、y が同一)、3 番目の次元 (z 座標) で最も高い値を持つものを選択したいと思います。例: (最初の 2 次元は最初の 2 行です)
M = [ 1 1 1 2 3 4 5 5 ;
4 4 4 6 6 3 2 2 ;
3 4 5 3 4 5 7 8 ];
^ ^ ^ ^ ^
私は取得したい:
Res = [ 1 2 3 4 5 ;
4 6 6 3 2 ;
5 3 4 5 8]
マトリックスが非常に大きいため、できるだけ速く動作させる必要があります。したがって、可能であればソートなしで。ループやソートを行わずに、これを行うための matlab の「ショートカット」を探しています。ありがとうマトラビット