generating a matrix question
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
mohamed
am 11 Dez. 2013
Kommentiert: mohamed
am 12 Dez. 2013
i want to generate a matrix that each element is the sum of its row and column ive tried usin the henkel command but it didnt work is there an alternative or more simple solution thx
0 Kommentare
Akzeptierte Antwort
Azzi Abdelmalek
am 11 Dez. 2013
A=zeros(3,4);
[ii,jj]=ind2sub(size(A),1:numel(A));
A(1:end)=sum([ii' jj'],2)
3 Kommentare
Azzi Abdelmalek
am 11 Dez. 2013
A=[20 4;3 5]
numel(A) % is number of element in A
ans=
4
A(1)
A(2)
A(3)
A(4)
1,2,3 and 4 are linear indices. to get subscripts use ind2sub
ii=[1 2 1 2] rows N°
jj=[1 1 2 2] column N°
Look at
doc numel
doc ind2sub
Weitere Antworten (1)
Andrei Bobrov
am 11 Dez. 2013
Bearbeitet: Andrei Bobrov
am 11 Dez. 2013
s = [3 4];% let s - size new matrices
A = hankel(2:s(1)+1,s(1)+1:sum(s));
or
A = bsxfun(@plus,(1:s(1))',1:s(2));
or
s = [3 4];
[ii,jj] = ndgrid(1:s(1),1:s(2));
A = ii + jj;
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!