[解決済み] 単純論理条件フラグ MATLAB
2022-02-13 10:07:47
質問
以下のデータ抽出のロジックを開発するのを手伝ってほしい。C1が'1'のとき、C2カラムが'1'にトグルする必要があります。次に、C1が'-1'のとき、C2カラムは'0'にトグルする。C1 のトグル (1 & -1) の間にある C2 のすべての行は '1' になる必要があります。
Date C1 C2
'24-Dec-1999' 0 0
'31-Dec-1999' 1 1
'07-Jan-2000' 0 1
'14-Jan-2000' 0 1
'21-Jan-2000' 0 1
'28-Jan-2000' 0 1
'04-Feb-2000' -1 0
'11-Feb-2000' 0 0
'18-Feb-2000' 0 0
'25-Feb-2000' 0 0
以下のようにしましたが、1999年12月31日と2000年2月4日の最初と最後のエントリーしか変更されません。C2の間のエントリ(2000年1月7日から2000年1月28日)も「1」として表示されるようにするにはどうしたらよいでしょうか?
C2(C1==1)=1;
C2(C1==-1)=0;
解決方法は?
更新情報
最も簡単な方法は、累積和を計算することです。
C2 = cumsum(C1);
オリジナル / 代替品
インデックスを見つけることができます。
C1=1
と
C1=-1
あなたのコメント通り、これらは同数であるべきです。
idxStart = find(C1=1); % Could use >0.5 to avoid numerical precision issues
idxEnd = find(C1=-1); % Could use <-0.5 to avoid numerical precision issues
そして、それらをループして
C2=1
の間に
C2 = zeros(size(C1));
for ii = 1:numel(idxStart)
C2(idxStart(ii):idxEnd(ii)-1) = 1;
end
関連
-
[解決済み] KroneckerDelta - matlab
-
[解決済み] Matlabで列ベクトルを反復処理する方法は?[重複].
-
[解決済み] matlabでhashtables/hashmapsを使う方法はありますか?重複
-
[解決済み] 単純論理条件フラグ MATLAB
-
[解決済み] Matlabによる最急降下法の実装
-
[解決済み] Matlabでm-fileを実行するとき、コマンドビューでどのように改行を出力するのですか?
-
[解決済み] 1変数に対するfzeroとfsolveの差分
-
[解決済み] MATLABのパスに影をつける」とはどういう意味ですか?ファイル内で行うにはどうしたらいいですか?
-
[解決済み] 関数から返されたMATLAB配列を、最初にローカル変数に代入せずにインデックスを作成するにはどうすればよいですか?
-
[解決済み】MATLABでxkcd風グラフを作る
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] double 型の入力引数に対して未定義の関数 'int' が存在する [重複] 。
-
[解決済み] Matlabで矢印を描くには?
-
[解決済み] MATLABでベクトルからNaNを除去する
-
[解決済み] Matlabで列ベクトルを反復処理する方法は?[重複].
-
[解決済み] エラー: 等号の左側にある式は代入の対象として有効ではありません Matlab
-
[解決済み] Matlab: 逆コサイン(acos)の完全解を返す
-
[解決済み] パーフカーブで1つの値を返す - matlab
-
[解決済み] matlabで三角行列を作る
-
[解決済み] matlabでchi2gof関数を理解する
-
[解決済み] Matlab の imrect を用いて,新しい矩形の座標を取得します.