一歩一歩やってみましょう。
最初のステップ - 条件の構築
もしあなたがそうするなら:
A > 0.5
長さ のベクトルが得Aられ1、要素の位置Aは よりも大きくなります0.5。つまり、次のようになります。
Columns 1 through 14
0 0 0 1 1 1 0 0 1 1 0 1 1 0
Column 15
1
もしあなたがそうするなら:
t >= 2 & t < 5
上記と同様のベクトル(同じ長さ)が得られますが、今回1は特定の位置で、ベクトルの特定の要素がt間隔[ 2, 5 > . ベクトルは次のようになります。
Columns 1 through 14
0 0 0 0 0 0 0 1 1 1 1 1 1 1
Column 15
0
両方の条件が満たされることを要求することで、これら 2 つのベクトルを組み合わせることができます。
(A > 0.5) & (t >= 2) & (t < 5)
ベクトルを取得します。
Columns 1 through 14
0 0 0 0 0 0 0 0 1 1 0 1 1 0
Column 15
0
前の 2 つのベクトルの両方に1 がある位置に 1 があることに注意してください!
2 番目のステップ - ベクトルから要素を抽出する
これを行う場合:
A( logical([1 0 0 0 0 0 0 0 0 0 0 0 0 0 0]) )
vector から最初の要素のみが抽出されA、次のようになります。
0.1000
最初の 2 つの要素を次のように抽出します。
A( logical([1 1 0 0 0 0 0 0 0 0 0 0 0 0 0]) )
等々。
vector の一部の要素の値を変更したい場合はA、最初と最後の要素を valueに変更すると、次の3ように実行できます。
A( logical([1 0 0 0 0 0 0 0 0 0 0 0 0 0 1]) ) = 3;
まとめ (または TLDR)
から目的の要素を抽出し、次Aの値を割り当てますNaN。
A( (A > 0.5) & (t >= 2) & (t < 5) ) = NaN;