Changing Indexing Order in matrix raws
4 次查看(过去 30 天)
显示 更早的评论
Good day, everyone! I have the following array(1) = [0 0 0 0 0 0 0 0 0 1 2 3 4 5] (14 elements in total, for example) and I can derrive respective indexes of the elements in it. The other array(2) = [12 11 14 5 1] contains a set of indexes for non-zero elements in array(1) (mapping one-to-one - so 1 should have index 12, 2 - index 11, etc.). How can I sort array(1) with respect to indexes in array(2) with no use of loop structure? (I solved it with loop) .
0 个评论
采纳的回答
KSSV
2019-5-1
a1 = [0 0 0 0 0 0 0 0 0 1 2 3 4 5] ;
a2 = [12 11 14 5 1] ;
a3 = zeros(size(a1)) ;
a3(a2) = a1(a1~=0)
1 个评论
ahmad tourei
2020-5-5
Thanks a lot. after searching for 2 deays, i found my answer for labeling the rows and colomns of matrices by reading your suggest.
更多回答(2 个)
Jos (10584)
2019-5-1
Your question is a little confusing, but here is my take on it:
A1 = [0 0 0 0 0 0 0 0 0 1 2 3 4 5]
A2 = [12 11 14 5 1]
out([numel(A1) A2]) = [0 A1(A1~=0)]
% 5 0 0 0 4 0 0 0 0 0 2 1 0 3
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!