seleting some part of matrix

1 次查看(过去 30 天)
Andrea
Andrea 2012-5-30
Q = randi(456,10,15);
row=[1 2 5 4 3 6];
column=[5 7 3 4 8 14];
p = Q(row,column);
P = zeros(size(Q));
P(1:numel(row),1:numel(column)) = p;
The problem is:
I need matrix p to have Q(row(1),column(1)), Q(row(1),column(1)), Q(row(2),column(2)), Q(row(3),column(3)), Q(row(4),column(4)), Q(row(5),column(5)), and Q(row(6),column(6)). But what (p = Q(row,column);) give me is a 6*6 matrix in this way Q(row(1),column(1)), Q(row(1),column(2)), Q(row(1),column(3)), Q(row(1),column(4)), and..... How can solve this problem?
  1 个评论
Andrei Bobrov
Andrei Bobrov 2012-5-31
double
http://www.mathworks.com/matlabcentral/answers/39877-put-smaller-matrix-in-bigger-matrix

请先登录,再进行评论。

回答(1 个)

Walter Roberson
Walter Roberson 2012-5-31
Q( subs2ind(size(P), row, column) )

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by