指定した区間内におけ​る特定の数字がある行​の列部分を足す方法に​ついて

4 visualizaciones (últimos 30 días)
Masashige Tayasu
Masashige Tayasu el 7 de En. de 2020
Comentada: Masashige Tayasu el 9 de En. de 2020
上図のようなデータセットにおいて,Vername "V”の数字毎にVername ”H”の数字の和を算出したいと考えています.
範囲はVername "Length”の数字が出てくるまでです.
例としては,Vが7の時のHを足したもの,Vが0の時のHを足したもので別々に出力されるようにしたいです.
端的に言うと,指定した範囲で条件を満たす行のインデックスを抽出し,その和を算出したいと考えています.
  2 comentarios
Akira Agata
Akira Agata el 8 de En. de 2020
Editada: Akira Agata el 8 de En. de 2020
データセットがテーブル型変数Tと想定すると、以下の手順で算出できそうですがいかがでしょうか?
Step.1:
>>idx = strlength(T.Length) == 0;
>>T = T(idx,:);
として、変数名="Length" がカラの行だけを抽出
Step.2:
findgroups 関数で、変数名Vの値ごとにグループ番号を付与
Step.3:
splitapply 関数で、グループ毎に変数名Hの数字の総和を算出
Masashige Tayasu
Masashige Tayasu el 9 de En. de 2020
本データ数が膨大で,変数名="Length"の数字が出てくる範囲がいくつかあり,それぞれの区間ごとで,グループ番号毎の総和を算出したいのですが,その場合はどうすればよいのでしょうか.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre データの前処理 en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!