필터 지우기
필터 지우기

Recall elements inside the rows of a matrix based on a predefined array

조회 수: 11 (최근 30일)
Given the following matrix
M= [ 58 116.4 78.5 72.5 163.6 60.4 100 66 117 65 55;
58.3 123.1 89.8 87.4 167.7 61.3 100 66 117 65 55;
58.2 123.1 78.3 80.4 152.3 61.3 100 66 117 65 55;
58 125.4 84.5 80.1 169.2 61.6 100 66 117 65 55;
58 105.3 86.5 84.5 220.8 63.8 100 66 117 65 55;
58.4 100.8 77 66.1 172.5 54.3 100 66 117 65 55;
58 116.4 94.3 91 199.5 65.6 100 66 117 65 55;
58.1 116.4 113.3 7.1 166.9 60.8 100 66 117 65 55;
58.3 103 72.9 56.4 212.7 60.6 100 66 117 65 55;
58 123.1 130.6 87.9 169.5 61.1 100 66 117 65 55;
58 98.6 76.1 65.1 154.2 60 100 66 117 65 55;
58 118.7 81.2 72.5 170.5 60.8 100 66 117 65 55;
58 103 83.1 65.1 154.2 60 100 66 117 65 55;
58.1 105.3 70.2 66.1 148.1 59.5 100 66 117 65 55;
58 118.7 81.2 72.5 169.5 60.8 100 66 117 65 55]
I want to recall the elements in the rows based on a vector
V= [1 3 4 5 6 7 3 2 1 ]
So in this case the new Matrix A will have as first raw the first row of M, as second raw the 3rd row of M, as third raw the 4th row of M, as fourth row the fifth row of M and so on.
Every number inside V recall the specified row of M, creating the new matrix A
A = [58 116.4 78.5 72.5 163.6 60.4 100 66 117 65 55;
58.2 123.1 78.3 80.4 152.3 61.3 100 66 117 65 55;
58 125.4 84.5 80.1 169.2 61.6 100 66 117 65 55;
58 105.3 86.5 84.5 220.8 63.8 100 66 117 65 55;
and so on
The number of raw of A will be equal to the length of the vector V, that could be longer than the one writted above

채택된 답변

Fabio Freschi
Fabio Freschi 2019년 9월 11일

추가 답변 (0개)

카테고리

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

제품


릴리스

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by