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)

Community Treasure Hunt

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

Start Hunting!

Translated by