how to sort values depending on other vector?

7 views (last 30 days)
Shubham Mohan Tatpalliwar
Shubham Mohan Tatpalliwar on 23 Oct 2018
Reopened: Walter Roberson on 22 Dec 2018
if true
% code
x=[0,50,150,100,50,150,0,100,150,0,50,150]
y=[1,2,3,3,2,1,1,2,3,3,2,1]
i want to sort y as 0 to 1, 1 to 2 and 2 to 3
for x 0 to 50 and 50 to 100

Answers (1)

Steven Lord
Steven Lord on 23 Oct 2018
If I understand what you've described correctly, you want to sort y and break ties among elements in y that have the same value based on the corresponding elements of x. Is that right? If so, you can pack the two vectors into a matrix and use sortrows to sort first by the column corresponding to y then by the column corresponding to x. In my sample code below, the y column is column 2 and the x column is column 1 so I sortrows using [2 1].
x = [0,50,150,100,50,150,0,100,150,0,50,150]
y = [1,2,3,3,2,1,1,2,3,3,2,1]
M = [x.', y.']
M2 = sortrows(M, [2 1])
If you need to know which row in M went to which row in M2 (or equivalently which elements in x and y went where in M2) call sortrows with two outputs.
  5 Comments
Steven Lord
Steven Lord on 23 Oct 2018
how should i code to create 42 vectors?
How are you planning to use that data? I suspect your ultimate goal is not "to sort the values and count it" -- unless this is part of a homework assignment, I expect you want to do something with the sorted data and/or the counts. What is that something?
Shubham Mohan Tatpalliwar
Shubham Mohan Tatpalliwar on 23 Oct 2018
Edited: Shubham Mohan Tatpalliwar on 23 Oct 2018
from this sorted values
further i want to to sort them on next parameter
like sort(idx1(d>=0 & d<2)
and count the total number of the logical 1
and i want to do it for every vector i.e. every sterp (0 to 100 and so on)
which is time
and this time would be used for further calculations
this is the part of my project and the excel file is bigger so i cannot share it directly on the mathworks portal

Sign in to comment.

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!