Manipulate matrix of different dimension

1 visualización (últimos 30 días)
kamal
kamal el 14 de Ag. de 2019
Respondida: Andrei Bobrov el 14 de Ag. de 2019
I have a matrix like this
q2.PNG
I want to create a square matrix of size 5. At first row of matrix 1 only element 1 is present. using that element i want matrix as m1 -m1 at 1st and second position of first row in matrix 2.
q1.PNG
Please help me the logic
  3 comentarios
KSSV
KSSV el 14 de Ag. de 2019
(2,2) element is m1+m2+m5 or m1+m2?
kamal
kamal el 14 de Ag. de 2019
m2+m5

Iniciar sesión para comentar.

Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 14 de Ag. de 2019
mm = [0 0 1;1 2 5;0 2 3 ;0 3 4; 0 4 5];
m = size(mm,1);
n = max(mm(:));
lo = eye(m,n) ~= 0;
M = zeros(m,n);
[ii,~,v]=find(mm);
M(sub2ind([m,n],ii,mm(mm~=0))) = -v;
M = M.*~lo;% or M(lo) = 0;
M = M + M.';
M(lo)=-sum(M,2);

Más respuestas (0)

Categorías

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

Productos


Versión

R2014b

Community Treasure Hunt

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

Start Hunting!

Translated by