フィルターのクリア

sort matrix by absolute value

22 ビュー (過去 30 日間)
Poorva
Poorva 2021 年 3 月 29 日
コメント済み: Poorva 2021 年 3 月 30 日
How do I sort a matrix by absolute value and display its original value with +,- sign?

採用された回答

DGM
DGM 2021 年 3 月 29 日
編集済み: DGM 2021 年 3 月 29 日
Consider the case for a vector:
A=randi(19,[10 1])-10
[~,idx]=sort(abs(A))
Asorted=A(idx)
For other arrays, you'll have to decide how exactly you want to sort it, and do the indexing accordingly.
  4 件のコメント
Poorva
Poorva 2021 年 3 月 30 日
Thank you ....I got it now and the code is working well.
Poorva
Poorva 2021 年 3 月 30 日
[y, idx2] = sort(D,2,'descend');
sx = size(C);
index = sub2ind(sx, repmat((1:sx(1)).', 1, sx(2)), idx2);
y2 = C(index);
res=array2table(y2)

サインインしてコメントする。

その他の回答 (1 件)

Steven Lord
Steven Lord 2021 年 3 月 30 日
Specify the 'ComparisonMethod' name-value pair argument.
rng default
A = randi([-10 10], 5, 5)
A = 5×5
7 -8 -7 -8 3 9 -5 10 -2 -10 -8 1 10 9 7 9 10 0 6 9 3 10 6 10 4
[values, locations] = sort(A(:), 'ComparisonMethod', 'abs');
[values.'; locations.']
ans = 2×25
0 1 -2 3 3 4 -5 6 6 7 7 -7 -8 -8 -8 9 9 9 9 10 10 10 10 10 -10 14 8 17 5 21 25 7 15 19 1 23 11 3 6 16 2 4 18 24 9 10 12 13 20 22
  2 件のコメント
DGM
DGM 2021 年 3 月 30 日
Do you know about when that option was introduced? I'm guessing it was some time around 2018, but release notes are vague and I only know it's not in R2015b.
Poorva
Poorva 2021 年 3 月 30 日
thank you steven ....my code is working.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeShifting and Sorting Matrices についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by