Populating a matrix with predetermined values

21 views (last 30 days)
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.

Accepted Answer

James Tursa
James Tursa on 3 May 2015
X = zeros(N,N);
X(A(:,1)) = A(:,2);
X = X';
  3 Comments
James Tursa
James Tursa on 4 May 2015
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 on 14 May 2015
Hi James, Sorry I did not see that you had commented again. I think I have figured it out now. Thank you though.

Sign in to comment.

More Answers (0)

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!