2017-04-10 2 views
0

質問はタイトルと同じです。私はループを使ってそれを行うことができます。しかし、ループなしでこれを実現するより良い方法があるのだろうか。ありがとう。私の質問を明確にしなかった場合、次のコードはループを使用したいものを示しています。ところで、各行のデータは、左から右に向かって、最小から最大にソートされます。スレッシュホールドより小さいマトリックスの各行の要素の数を見つける方法

Mat = rand(20); 
Mat = sort(Mat,2); 
Mat(:,1) = 0; % in case these is no element smaller than the threshold 
result = zeros(20,1); 
threshold = 0.2; 
for i = 1:20 
    result(i) = length(find(Mat(i,:) < threshold)); 
end 

答えて

3

あなたはあなたの状態を使用してlogical行列を構成することができ、その後、sum各行が基準

作品
result = sum(Mat < threshold, 2) 
+0

にマッチしたアイテムの数を見つけること。どうもありがとうございました。 – sean

関連する問題