2012-02-04 25 views
0

dataと呼ばれる28 x 28 x 1 x 10000の行列と0から9までの整数の束からなるという1×10000のベクトルがあります。実際にやりたいことはdata行列をlabel値に対応する10個の小さな行列に分割することです。Matlab:非連続行列の列を選択する

forループ以外の方法はありますか?

+0

を、あなたはラベルが10000の大きさを持っていることを意味していましたか? –

答えて

2

Matlabではスライスのインデックス作成が可能です。例:

data(:,:,:,1:1000) 

「非連続」とはどのようになっているのでしょうか。ラベル上で選択するヒントがありますが、寸法が一致しません。彼らがした場合:

data(:,:,:,label == 1) 

または

data(:,:,:,find(label == 1)) 
+0

申し訳ありませんが、タイプミスで、10000個のラベルがあります。スライスの面では、私は1:3と言うこともできるし、4:7と言うこともできます。私は条件付きで試してみます – Mala

+0

ありがとう、条件付きのものが働いた! – Mala

関連する問題