Which function should I use to fill an ouput matrix based on information in two other matrices
조회 수: 1 (최근 30일)
이전 댓글 표시
I want to fill up an Ouput matrix row-wise, by looking into the Index information and Data.
For example, if I have three Matrices
Index = [1 2 1; 5 4 4], Data = [12 16 10; 13 16 18; 12 11 14; 18 19 22; 23 60 17],
Now loop will start from the first row of "Index" and look into the "Data" column "1". The output for say, first two loops should be:
Output = [12 13 12; 60 19 19]
Which function should I use? Histcount, accumarray or any other?
댓글 수: 0
채택된 답변
KSSV
2021년 5월 7일
Index = [1 2 1; 5 4 4];
Data = [12 16 10; 13 16 18; 12 11 14; 18 19 22; 23 60 17] ;
Output = [12 13 12; 60 19 19] ;
iwant = zeros(size(Index)) ;
for i = 1:size(Index,1)
iwant(i,:) = Data(Index(i,:)',i) ;
end
iwant
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!