Removing values from a variable.

조회 수: 8 (최근 30일)
RDG
RDG 2014년 5월 19일
편집: Jos (10584) 2014년 5월 20일
I need some help. I can't seem to get the result for the following:-
Suppose, I have the following cell array:
A{1}=[1 2 2; 2 2 2; 3 1 2; 4 5 6; 5 5 6; 7 1 2] %Remove value of 4 5 6 and 5 5 6 based on Variable B's second and third column
B{1}=[4 5 6]
How can I remove the value of 4 5 6 and 5 5 6 in A, based on B's second and third column?
My resultant, should be [1 2 2; 2 2 2; 3 1 2; 7 1 2]
Many thanks in advance.

답변 (2개)

Douglas Alves
Douglas Alves 2014년 5월 19일
편집: Douglas Alves 2014년 5월 19일
A{1}=[1 2 2; 2 2 2; 3 1 2; 4 5 6; 5 5 6; 7 1 2] ;
A{1}(4:5,:) = [] ;
it means access the first element of cell 1 (which is a matrix). in parenthesis access the rows 4 and 5 no matter the columns... equal it to []

Jos (10584)
Jos (10584) 2014년 5월 19일
편집: Jos (10584) 2014년 5월 20일
What are the exact criteria for removal? Just when the second column of A{1} matches the second value of B{1} and the third column of A{1} matches the third value of B{1}?
And why do you store them as an element of a cell array
A = [1 2 2; 2 2 2; 3 1 2; 4 5 6; 5 5 6; 7 1 2]
B = [4 5 6]
tf = A(:,2)==B(2) & A(:,3)==B(3) % select
A(tf,:) = [] % remove

카테고리

Help CenterFile Exchange에서 Multidimensional Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by