Populating a matrix with predetermined values

3 次查看(过去 30 天)
I have a N x N matrix which I have defined as X, I have another matrix that contains values I would like to populate my matrix X with.
For example, if X is a 3 x 3 matrix and A is the matrix below:
A =
3 15
4 16
5 17
6 18
7 19
How do I populate the matrix X with the values in the second column of A where the first column is the position in the matrix X. i.e I would like the final matrix X to be
X = 0 0 15
16 17 18
19 0 0
Thank you.

采纳的回答

James Tursa
James Tursa 2015-5-3
X = zeros(N,N);
X(A(:,1)) = A(:,2);
X = X';
  3 个评论
James Tursa
James Tursa 2015-5-4
The example you gave works with linear indexing into a 2D matrix. For a 3D array you will have to give a short example of where the elements would go before we can answer how to do it and whether linear indexing will work.
Alice Stembridge
Alice Stembridge 2015-5-14
Hi James, Sorry I did not see that you had commented again. I think I have figured it out now. Thank you though.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by