Azzera filtri
Azzera filtri

Delete and merge rows and columns based on values of other matrix

2 visualizzazioni (ultimi 30 giorni)
suppose consider a matrix of A = [1 2 3 4 ; 5 6 7 8 ; 9 1 2 3 ; 1 2 3 4] consider matrix B = [ 1 0 2 4 ]
so in matrix B value of 2 unit is 0 so i need to delete second row and second column in matrix A
final A1 matrix = [1 3 4 ; 9 2 3 ; 1 3 4]

Risposta accettata

Sindar
Sindar il 21 Feb 2020
If I understand correctly:
  • You have one NxN matrix A
  • And a second 1xN vector B
  • When an element of B is zero, you delete rows and columns from A with the same index
A = [1 2 3 4 ; 5 6 7 8 ; 9 1 2 3 ; 1 2 3 4];
B = [ 1 0 2 4 ];
% find where B is nonzero
idx = find(B~=0);
% copy corresponding rows and columns of A to A1
A1=A(idx,idx);
  7 Commenti
vimal r
vimal r il 24 Feb 2020
so how to solve without looping it by individually...??
Guillaume
Guillaume il 24 Feb 2020
I'm not sure which of your 3 questions the above refers to. You would be better off starting a new question for each topic.

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by