How can i seperate columns by comparing the values of first row?

2 次查看(过去 30 天)
I have a martix
A= 0 1 0 0 1 1 1 1 1 1
0 1 0 0 1 1 1 1 1 1
0 1 0 0 1 0 1 1 1 1
0 1 0 0 1 1 1 1 1 0
1 1 0 0 1 1 1 0 1 1
0 1 0 0 1 1 1 0 1 1
0 1 0 0 1 1 0 1 1 1
0 1 0 0 1 1 1 1 0 0
0 1 0 0 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 0
0 1 0 0 1 1 1 1 1 1
where, in compare to first row i want to have two separate matrix as B with all values which will have A(1,:)==0 and C with all values which will A(1,:)==1
In other words,from this example i want to separate 1st, 3rd and 4th column in a separate matrix and others in another matrix.

采纳的回答

Andrei Bobrov
Andrei Bobrov 2016-5-18
t = A(:,1) == 0;
B = A(:,t)
C = A(:,~t)

更多回答(1 个)

ahsan mahmood
ahsan mahmood 2016-5-18
clc;
clear all;
A=[1 1 0;1 2 5;3 6 8;5 4 2];
j=1;
k=1;
nn=size(A);
for i=1:nn(2)
if A(1,i)==1
C(:,j)=A(2:end,i);
j=j+1;
else
B(:,k)=A(2:end,i);
k=k+1;
end
end

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by