How to remove particular rows from a matrix?

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 :)

 채택된 답변

Walter Roberson
Walter Roberson 2020년 2월 22일
편집: Walter Roberson 2020년 2월 22일

0 개 추천

[found, idx] = ismember(y, A, 'rows');
A(idx(found). :) = []; %delete one copy of the found ones

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

질문:

2020년 2월 22일

편집:

2020년 2월 22일

Community Treasure Hunt

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

Start Hunting!

Translated by