Creating a matrix index
12 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a 10 by 1 matrix of numbers between 1 and 10, lets call it Z. I want to create a matrix, where say it is 5 by 10, where it takes the number from the first row in Z, say 5, and then creates a row in the new 5 by 10 matrix where the first row would be 0 0 0 0 1 0 0 0 0 0 , basically placing a 1 in the column dictated by the number from the Z matrix, can anyone help me?
Cheers, Edward
1 Kommentar
KALYAN ACHARJYA
am 3 Sep. 2018
Explain: Consider a Matrix as an example and what result you are expecting?
Antworten (1)
Cesar Antonio Lopez Segura
am 3 Sep. 2018
Bearbeitet: Cesar Antonio Lopez Segura
am 3 Sep. 2018
Hi Edward,
Here your question is answered:
Z = [ 5,1,3,6,7,8,9,10,4,6]';
size(Z) % check matrix size
Matrix5by10 = zeros(5,10); % create a zero matrix
% Your question is answered here:
Matrix5by10( 1,Z( 1 ) ) = 1 % write matrix 5 by 10 been Z a colum indicator
If you need a loop, here you can find the solution:
% Iterative example
for i = 1:5; Matrix5by10( i ,Z( i ) ) = 1; end; Matrix5by10
0 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!