필터 지우기
필터 지우기

Rearrange a matrix by the values of the first column

조회 수: 2 (최근 30일)
Day Hong Kim
Day Hong Kim 2020년 12월 17일
댓글: Day Hong Kim 2020년 12월 18일
Hello all, I would like to rearrange the matrix according to the values in the first column. the first column represents station number and the second column represents value acquired from the corresponding station ( I attached the file). I have 9 stations, so I want a n x 9 matrix where n is the values from each station. It would be like
0 0 0 0
10 10 10 10
20 20 20 20
30 30 30 30
50 50 50 50
75 75 75 75
125 125
150 150
  댓글 수: 2
KALYAN ACHARJYA
KALYAN ACHARJYA 2020년 12월 17일
If you want help, you need to make it easy to undestand. Please elaborate the question with small sample example
Day Hong Kim
Day Hong Kim 2020년 12월 18일
Sorry for my bad writing skill. Here is the example,
The first column is the number of each station and the second column is the value acquired from the station.
1 0
1 10
1 20
2 0
2 10
2 20
2 30
I want to rearrange this matrix to
0 0
10 10
20 20
30
so each column represents a station and the rows represent the value.
Hope this makes sense.

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

채택된 답변

Matt J
Matt J 2020년 12월 17일
load(websave('question.mat','https://www.mathworks.com/matlabcentral/answers/uploaded_files/464105/question.mat'));
G=findgroups(stationdepth(:,1));
n=max(histcounts(G,1:max(G)+1));
out=nan(n,9);
for i=1:9
bool=(G==i);
out(1:nnz(bool),i)=stationdepth(bool,2);
end
out
out = 14×9
0 0 0 0 0 0 0 0 0 10 10 10 10 10 10 10 10 10 20 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 30 30 50 50 50 50 50 50 50 50 50 75 75 75 75 75 75 75 75 75 NaN NaN 100 100 100 100 100 100 100 NaN NaN 125 125 125 125 125 125 125 NaN NaN 150 150 150 150 150 150 150 NaN NaN NaN NaN 200 200 200 200 200

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by