2

5つの空の配列を含む空の配列を初期化しようとしています。しかし、matlabは、代わりに単純な空の配列変数を作成するようです。以下は、私が試した2つの構文です。matlabで可能であれば何かアイデアはありますか?

bins = [ []; []; []; []; []  ];

bins = repmat([], 5, 1)
4

3 に答える 3

4

dealこのような割り当てに適した関数です。

[bins{1:5}] = deal([]);

binsこれにより、各要素bins{i}に空の配列が含まれるセル配列が作成されます。

于 2012-05-31T16:06:59.990 に答える
3

MATLABには、行列、つまり数値型(または文字または論理値)の(多次元の可能性がある)配列のみがあります。他の構造を1つの変数にグループ化するには、セル配列を試してください。

bins = { []; []; []; []; []  };

bins{2}次に、たとえばの代わりに中かっこで外側の配列の要素にアクセスする必要がありbins(2)ます。

于 2012-05-31T15:54:22.167 に答える
0

これを初期化する別のトリック:

>> bins = {}      %# just to make sure `bins` wasn't used before
>> bins{5} = []
bins = 
    []    []    []    []    []
于 2012-06-01T00:48:47.540 に答える