I need to sort the vector Codes and I need the values of vector Discharge to be ordinated according to it. I tried the function sortrows but in this case it doesn't work since in soe cases I'm not working with scalars.

6 Comments

What does it mean to sort Codes when Codes contains a mix of scalars and vectors?
How should be code 0 in row 10 be sorted relative to the 0 that is in the second element of row 3?
Name_Code = table(IDs, C, D, 'VariableNames',["Name" "Codes" "Discharge"]);
Name_Code.Codes=cellfun(@sort,Name_Code.Codes,"UniformOutput",false)
for example if I use this commands I+m able to sort the vectors in the Codes column, I would need a function that tells me how to keep the same order in the column Discharge
Use a for loop and the second output of sort.
I tried but it wasn't working
[Name_Code.Codes, Cidx] = cellfun(@sort,Name_Code.Codes,"UniformOutput",false);
Name_Code.Discharge = cellfun(@(d,idx)d(idx), Name_Code.Discharge, Cidx);
it works! huge thank you!

Sign in to comment.

 Accepted Answer

(Moving down from comment)
[Name_Code.Codes, Cidx] = cellfun(@sort,Name_Code.Codes,"UniformOutput",false);
Name_Code.Discharge = cellfun(@(d,idx)d(idx), Name_Code.Discharge, Cidx);

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!