# Deleting rows of a matrix based on values from another matrix

59 visualizzazioni (ultimi 30 giorni)
Hari il 8 Lug 2022
Risposto: Johan il 8 Lug 2022
I have a m x 3 matrix A, and a nx1 matrix B. I need to remove those rows of A if either column 1 or 2 of the matrix equals any value in B.
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Risposta accettata

Johan il 8 Lug 2022
You can use ismember() to do that:
A = randi(5,5,3)
A = 5×3
5 5 4 2 5 3 2 1 3 4 4 4 3 5 3
B = randi(5,2,1)
B = 2×1
5 1
% Find all the row where col 1 to 2 of A have a value in B
1 1 1 0 1
A(mask,:) = [] % delete the rows of A according to the mask
A = 1×3
4 4 4
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Più risposte (1)

Kritarth Sinha il 8 Lug 2022
Modificato: Kritarth Sinha il 8 Lug 2022
Hello Hari,
You can simply use nested loops and for each value in column 1 or 2,you can check that is present in matrix B and do it accordingly.
Hope this will help.
##### 0 CommentiMostra -2 commenti meno recentiNascondi -2 commenti meno recenti

Accedi per commentare.

### Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by