how to sort values depending on other vector?

조회 수: 8 (최근 30일)
Shubham Mohan Tatpalliwar
Shubham Mohan Tatpalliwar 2018년 10월 23일
다시 열림: Walter Roberson 2018년 12월 22일
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

답변 (1개)

Steven Lord
Steven Lord 2018년 10월 23일
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
Steven Lord
Steven Lord 2018년 10월 23일
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 2018년 10월 23일
편집: Shubham Mohan Tatpalliwar 2018년 10월 23일
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

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Shifting and Sorting Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by