Help calculating values from a table into a loop

Hi,
I have the following table T, where there are 2 different timepoints, for 2 different birds, 3 trials per day.
I want to calculate the timepoint 1 and 2, bird 1 and 2, pre and post trials (1 to 3) sum of value1, and sum of value 2 (like the code bellow).
However, I want to do this in a loop/function that wouln't require manual change of numbers. Can you help?
timepoint1_bird1_pre_trials = sum(T.value1(1:3))
timepoint2_bird1_pre_trials = sum(T.value1(7:9))
timepoint1_bird1_post_trials = sum(T.value1(4:6))
timepoint2_bird1_post_trials = sum(T.value1(10:12))

 采纳的回答

I would do this (untested)
sumTbl = groupsummary(T,["timepoint","bird","day"],'sum',"value1")
The result will be a table identifying each group and the sum of the corresponding group's value1 column.

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Matrix Indexing 的更多信息

产品

版本

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by