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

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

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File Exchangeファイルの操作 についてさらに検索

Community Treasure Hunt

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

Start Hunting!