3

セル配列を操作して、セル配列の特定のインデックスに空行列が含まれるようにします[]。私はこれを行う方法を理解できないようです:

>> yy=num2cell(1:10)

yy = 

  [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]

>> yy{1:2:end}=[]
??? The right hand side of this assignment has too few values to satisfy
 the left hand side.
>> yy(1:2:end) = []

yy = 

  [2]    [4]    [6]    [8]    [10]

ああ!私がやりたいことができないようです。セル配列に空の要素を残したい、例えば

  []    [2]    []    [4]    []    [6]    []    [8]    []    [10]

助言がありますか?私のインデックスベクトルは任意であり、インデックス形式またはブール形式のいずれかである可能性がありますが、必ずしも[1 3 579]ではありません。

4

1 に答える 1

7

実行できるのは、各セルを使用して(内容ではなく)セル配列にインデックスを付け、()各セルを空のセルに変更すること{[]}です。

yy(1:2:end) = {[]};

別の方法はDEAL関数を使用することですが、少し見苦しいように見えます。

[yy{1:2:end}] = deal([]);
于 2009-12-14T20:15:27.013 に答える