私は愚かな問題がありますが、私は^^への答えを見つけることができません。マトリクス(matlab)で列単位で整数を列方向に検索
私は100x10000 double matrix containing integers from 1 to 4
を持って欲しいrow-wise
を見つけることcolumn-count between every single integer
私の最初のアイデアを使用することでした:
storage_ones = cell(100,1);
for n = 1:100;
[row col] = find(matrix(n,:)==1);
storage_ones{n,1} = col;
end
そして、別のループでそれらをsubstract。
空の行列:しかし
find
で、私は以下の回答を得る1ずつを、0
誰もが、私はこの問題を解決する方法のアイデアを持っていますか?
ありがとうございます!
あなたはおそらく 'matrix'が '1'に*正確に*等しいことはありません浮動小数点エラーに苦しんでいます。代わりに、 'matrix'が' close(1): 'abs(matrix(n、:) - 1)<1e-12'のどこを探しますか?行列に実際に整数だけが含まれている場合は、 'uint8'などの整数データ型を使用することを検討してください。 – Suever
また、1を持たない可能性もあります。 – Suever
'histc'関数を使ってみましたか? '[a、b] = histc(行列 '、1:4);' – Prakhar