How do I delete columns from a matrix based on an array

1 Ansicht (letzte 30 Tage)
ozan aksu
ozan aksu am 20 Mär. 2017
Kommentiert: kowshik Thopalli am 20 Mär. 2017
I have matrix of A=[4 3 5 6 7; 1 4 8 4 7] and B=[3 6 7] and i want do delete columns of A which's first row contain the values of B and have the answer; A= [4 5; 1 8]
thank you

Akzeptierte Antwort

James Tursa
James Tursa am 20 Mär. 2017
A(:,ismember(A(1,:),B)) = [];

Weitere Antworten (1)

kowshik Thopalli
kowshik Thopalli am 20 Mär. 2017
As you can imagine there is more than one way to do this. here is one method.Not elegant but works
A=[4 3 5 6 7; 1 4 8 4 7];B=[3 6 7];
[ismem index] = ismember(A(1,:),B)
i=repmat(index,[2,1]
A(i~=0)=[]
reshape(A,2,2)

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by