Sort row by descending error

2 views (last 30 days)
yue ishida
yue ishida on 5 Jul 2017
Edited: Jan on 11 Nov 2017
Hi. I have a cell like this.
A=
'Q7' [ 0]
'Q12H' [-3]
'Q12G' [ 0]
I want to sort by descending direction.
But it says that amaxfc=sortrows(amaxfc,2,'descend');
it says that
Error using sortrows
Too many input arguments.

Answers (3)

Walter Roberson
Walter Roberson on 5 Jul 2017
The 'descend' option was not added until R2013b. Use
amaxfc = sortrows(amaxfc, -2);

Star Strider
Star Strider on 5 Jul 2017
Try this:
A = {'Q7' [ 0]
'Q12H' [-3]
'Q12G' [ 0]};
amaxfc=sortrows(A,2,'descend')
amaxfc =
3×2 cell array
'Q7' [ 0]
'Q12G' [ 0]
'Q12H' [-3]
  3 Comments
Vicki Lewis
Vicki Lewis on 10 Nov 2017
same here on 2016b I get this error
[a,b]=sortrows(data,2,'descend')
Error using sortrows
Too many input arguments.
Star Strider
Star Strider on 11 Nov 2017
I no longer have access to R2016b, so I can’t experiment with it.
Do you have a different variable or function called ‘sortrows’?
See what:
which sortrows -all
reveals.

Sign in to comment.


Jan
Jan on 11 Nov 2017
Edited: Jan on 11 Nov 2017
According to the documentation of sortrows in R2016b, I see only numerical arrays, CHAR matrices and tables as input, but not cell arrays. But the code works for cells also.
According to the help text and the source code, there are 2 inputs only in R2016b. Therefore the error message is expected and clear.
The 3rd input works only in R2016b, if you apply sortrows to a table object.

Tags

Products

Community Treasure Hunt

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

Start Hunting!