misbehaving of sort function, for looping the first and last rows not orienting to my expected results and well as specified indexes not corrects

1 回表示 (過去 30 日間)
Hi misbehaving of sort function, for looping the first and last rows not orienting to my expected results and well as specified indexes not corrects. Any assistance will be appreciated too. see the code:
>> a=[7 9 5 7; 1 5 8 9; 1 2 7 3;10 0 9 9]
[A B]=sort(a)
a =
7 9 5 7
1 5 8 9
1 2 7 3
10 0 9 9
A =
1 0 5 3
1 2 7 7
7 5 8 9
10 9 9 9
B =
2 4 1 3
3 3 3 1
1 2 2 2
4 1 4 4
>> [sizr sizc]=size(a);
aaa=zeros(sizr,sizc);
for i=1:4
if(A(B(i,3),3)>A(B(i,2),2)), aaa(B(i,3),:)=a(B(i,3),:), aA=A(B(i,3),3)
else, aaa(B(i,2),:)=a(B(i,2),:), aA=A(B(i,2),2)
end, end
aaa =
0 0 0 0
0 0 0 0
0 0 0 0
10 0 9 9
aA = 9
aaa =
0 0 0 0
0 0 0 0
1 2 7 3
10 0 9 9
aA = 8
aaa =
0 0 0 0
1 5 8 9
1 2 7 3
10 0 9 9
aA = 7
aaa =
0 0 0 0
1 5 8 9
1 2 7 3
10 0 9 9
aA = 9
  6 件のコメント
Rik
Rik 2017 年 4 月 13 日
So the problem is not with the output of sort? What is the goal of this code? You may be better off posting in your own language.
Roger Stafford
Roger Stafford 2017 年 4 月 13 日
As far as I can make out, you are expecting the sorting to occur along the rows, but the ‘sort’ function sorts along the columns unless you specify otherwise.
sort(a,1) sorts along each column
sort(a,2) sorts along each row
sort(a) by default sorts along each column

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

採用された回答

Eng. Fredius Magige
Eng. Fredius Magige 2017 年 4 月 21 日
編集済み: Stephen23 2017 年 4 月 21 日
Hi all my collegues, I got best answer by manipulation of sort as:
[AA BB]=sort(Graptable(:,[12:21,1:11])); Graptable = Graptable (BB,[1:21]);
Graptable(2*JmRow+1:end,:)=[ ]; Graptable (:,22)= 0;
for ii=1:JmRow
if(Graptable(ii,12)~=0&&Graptable(ii,13)~=0), Graptable (ii,:)=0;
else, end, end
Graptable (JmRow+1:end,22)=Graptable(JmRow+1:end,12);
Graptable (1:JmRow,22)=Graptable(1:JmRow,13);
SOORTING1=sortrows(Graptable,[22,12]); SOORTING1(1:JmRow,:)=[];%SOORTING1(:,22)=[ ];
Thanks MatLab community too

その他の回答 (0 件)

カテゴリ

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