私は、各ページ/スライスが他のスライスとは独立した3Dマトリックスを持っています。したがって、私はfind
コマンドを使用して各ページのデータをフィルタリングしたいと考えています。しかし、適用すると、find
は、私のデータを全体として表す行ベクトルのインデックスを返します。実際にはそうではありません。例えば:私は適用することができるように、私は、(独立して)そうすることを意図し`find`を使って3D行列の各ページのインデックスを見つける方法は?
ind(:,:,1)=
1 2 3
ind(:,:,2)=
1 5 6 10 %based on each slice, independent to other slices
:私はのようなものを期待
ind=
1 2 5 9 10 11 20 24 25 ...
:
a=rand(1,10,5);
ind=find(a<0.3);
これは次のようind
何かを返します見つかったインデックスは他のマトリックスの各スライスに割り当てられます。
ループを使用せずにこれを行うことはできますか?前もって感謝します!
あなたの例と同じように、各3Dスライスには条件を満たすインデックスの数が異なる可能性が高いため、出力として3D配列を持つことはできません。 3D配列の各スライス内のエレメントの数は同じでなければなりません。そのためには、セル配列を使用する必要があります。 –