Creating a matrix index

조회 수: 5 (최근 30일)
Edward Johnsen
Edward Johnsen 2018년 9월 3일
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
KALYAN ACHARJYA
KALYAN ACHARJYA 2018년 9월 3일
Explain: Consider a Matrix as an example and what result you are expecting?

댓글을 달려면 로그인하십시오.

답변 (1개)

Cesar Antonio Lopez Segura
Cesar Antonio Lopez Segura 2018년 9월 3일
편집: Cesar Antonio Lopez Segura 2018년 9월 3일
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

카테고리

Help CenterFile Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by