質問: 範囲を指定して演算する。 xの値は秒を表すのですが、例えば、xが1秒から10秒の間のy(各々が1)サンプルabのyの総和をmatlabで求めるにはどうしたら良いでしょうか?
回答: コード例はこちらです。 t = readtable('timestamps ex.xlsx','range', 'a3:d49','readvariablenames', false); % aのデータ ta = t(:,1:2); ta.properties.variablenames = {'x', 'y'}; % bのデータ tb = t(:,3:4); tb.properties.variablenames = {'x', 'y'}; % xが1から10の間のインデックスを取得 idxa = (ta.x >= 1) & (ta.x <=10); idxb = (tb.x >= 1) & (tb.x <=10); % 上記インデックスのaとbのyの合計を計算 result = sum(ta.y(idxa)) + sum(tb.y(idxb)); taやtbの記述は冗長かもしれませんが、処理が分かりやすくなるかと思い入れました。 matlab本体だけでできます。