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

2 ビュー (過去 30 日間)
ozan aksu
ozan aksu 2017 年 3 月 20 日
コメント済み: kowshik Thopalli 2017 年 3 月 20 日
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

採用された回答

James Tursa
James Tursa 2017 年 3 月 20 日
A(:,ismember(A(1,:),B)) = [];

その他の回答 (1 件)

kowshik Thopalli
kowshik Thopalli 2017 年 3 月 20 日
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)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by