2016-06-16 10 views
1

私は以下のマトリックスをMatlab上に持っており、条件をチェックしたいと思います。コードを書くのを手伝ってもらえますか?行列は私が確認したい条件ここでA5 M5 A6 M6 A7 M7 A8 M8Matlabの行列の条件を確認していますか?

列と呼ば

%A5 M5 A6 M6 A7 M7 A8 M8 
    %----------------------------- 
C=[0 1 0 2 0 3 0 4; 
    0 2 0 3 0 4 0 5; 
    0 3 0 4 0 5 0 6; 
    0 4 0 5 0 6 0 7; 
    1 5 1 6 1 7 1 8; 
    1 5 1 6 1 7 2 1; 
    1 5 1 6 1 7 0 1; 
    1 5 1 6 2 1 2 2; 
    1 5 1 6 2 1 3 1; 
    1 5 1 6 2 1 0 1; 
    1 5 1 6 0 1 0 2; 
    1 5 2 1 2 2 2 3; 
    1 5 2 1 2 2 3 1; 
    1 5 2 1 2 2 0 1; 
    1 5 2 1 3 1 3 2; 
    1 5 2 1 3 1 0 1; 
    1 5 2 1 0 1 0 2; 
    1 5 0 1 0 2 0 3; 
    2 1 2 2 2 3 2 4; 
    2 1 2 2 2 3 3 1; 
    2 1 2 2 2 3 0 1; 
    2 1 2 2 3 1 3 2; 
    2 1 2 2 3 1 0 1; 
    2 1 2 2 0 1 0 2; 
    2 1 3 1 3 2 3 3; 
    2 1 3 1 3 2 0 1; 
    2 1 3 1 0 1 0 2; 
    2 1 0 1 0 2 0 3; 
    2 2 2 3 2 4 2 5; 
    2 2 2 3 2 4 1 1; 
    2 2 2 3 2 4 0 1; 
    2 2 2 3 3 1 3 2; 
    2 2 2 3 3 1 0 1; 
    2 2 2 3 0 1 0 2; 
    2 2 3 1 3 2 3 3; 
    2 2 3 1 3 2 0 1; 
    2 2 3 1 0 1 0 2; 
    2 2 0 1 0 2 0 3; 
    2 3 2 4 2 5 2 6; 
    2 3 2 4 2 5 3 1; 
    2 3 2 4 2 5 0 1; 
    2 3 2 4 3 1 3 2; 
    2 3 2 4 3 1 0 1; 
    2 3 2 4 0 1 0 2; 
    2 3 3 1 3 2 3 3; 
    2 3 3 1 3 2 0 1; 
    2 3 3 1 0 1 0 2; 
    2 3 0 1 0 2 0 3; 
    2 4 2 5 2 6 2 7; 
    2 4 2 5 2 6 3 1; 
    2 4 2 5 2 6 0 1; 
    2 4 2 5 3 1 3 2; 
    2 4 2 5 3 1 0 1; 
    2 4 2 5 0 1 0 2; 
    2 4 3 1 3 2 3 3; 
    2 4 3 1 3 2 0 1; 
    2 4 3 1 0 1 0 2; 
    2 4 0 1 0 2 0 3; 
    3 1 3 2 3 3 3 4; 
    3 1 3 2 3 3 0 1; 
    3 1 3 2 0 1 0 2; 
    3 1 0 1 0 2 0 3; 
    3 2 3 3 3 4 3 5; 
    3 2 3 3 3 4 0 1; 
    3 2 3 3 0 1 0 2; 
    3 2 0 1 0 2 0 3; 
    3 3 3 4 3 5 3 6; 
    3 3 3 4 3 5 0 1; 
    3 3 3 4 0 1 0 2; 
    3 3 0 1 0 2 0 3] 

です:そのよう

ことを(もしあれば)私はA6,M6,A7,M7の値を見つけたい(1)M4がかかります少なくとも4異なる値

[同時に]

(2)M8は、スクリプト内のこのコードの実行が何をしたい達成し、少なくとも4異なる値

+1

使用 'numelの(ユニーク(C(:、列)))'取得します列の一意の値 – Suever

+0

条件が行のサブセットで満たされている場合は、すべての行についても条件が満たされます。行のサブセット、ランダムなサブセット、またはすべての行を必要としますか? – janismac

+0

どの列が 'M4'ですか? – gariepy

答えて

0

を取る:

% Relevant Columns of C 
M4 = 1; % Assuming M4 was some typo 
M8 = 8; 
cols = 3:6; 

if numel(unique(C(:,M4))) >= 4 && numel(unique(C(:,M8))) >= 4 
    A = C(:,cols); 
end 
関連する問題