Borrar filtros
Borrar filtros

generating a matrix question

3 visualizaciones (últimos 30 días)
mohamed
mohamed el 11 de Dic. de 2013
Comentada: mohamed el 12 de Dic. de 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

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 11 de Dic. de 2013
A=zeros(3,4);
[ii,jj]=ind2sub(size(A),1:numel(A));
A(1:end)=sum([ii' jj'],2)
  3 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 11 de Dic. de 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
jj=[1 1 2 2] column
Look at
doc numel
doc ind2sub
mohamed
mohamed el 12 de Dic. de 2013
thank you

Iniciar sesión para comentar.

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 11 de Dic. de 2013
Editada: Andrei Bobrov el 11 de Dic. de 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;

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by