How to remove particular rows from a matrix?

2 visualizzazioni (ultimi 30 giorni)
I need to remove particular row from a matrix A but only once, example:
A=[1 2 3 4; 1 2 3 4; 1 2 3 4; 1 1 1 1; 7 8 9 0]; y=[1 2 3 4; 1 1 1 1]; %the rows [1 2 3 4] in y occurs 3 times in A, I want to remove it only once
so setdiff(A,y, 'rows'); wont work.
But I need something general that works for arbitrary A and y
Thank you :)

Risposta accettata

Walter Roberson
Walter Roberson il 22 Feb 2020
Modificato: Walter Roberson il 22 Feb 2020
[found, idx] = ismember(y, A, 'rows');
A(idx(found). :) = []; %delete one copy of the found ones

Più risposte (0)

Categorie

Scopri di più su Matrices and Arrays 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