Find time elapsed in a table (for loop)?

2 Ansichten (letzte 30 Tage)
Mirthand
Mirthand am 18 Apr. 2021
Kommentiert: Mirthand am 21 Apr. 2021
I have a table with two columns, TrialNumber and Minutes (attached).
The trials represented are
15
30
45
60
75
90
Using the Minutes column, how can I find how much time has elapsed for each of the trials?
I think to do this I would want to subtract the last row with the trial and take the Minutes and subtract from the first row with the trial.
Thank you in advance for your help!

Akzeptierte Antwort

Megumi Fukuda
Megumi Fukuda am 18 Apr. 2021
Hi Mirthand,
Disclaimer: This anser is based on an assuption that the first row with a tt.TrialNumber contains the time ('tt.Minutes') where the trial actually started.
Your comment "I think to do this I would want to subtract the last row with the trial and take the Minutes and subtract from the first row with the trial." sounds sensible, and here is a snippet. duration_eachtrial should be what you want.
load tt.mat
allTrials = unique(tt.TrialNumber); % extract all the trials in the mat file
for idx_trial = 1:length(allTrials)
tmp_trialidx=find(tt.TrialNumber==allTrials(idx_trial));
duration_eachtrial(idx_trial) = tt.Minutes(tmp_trialidx(end))-tt.Minutes(tmp_trialidx(1));
end

Weitere Antworten (0)

Kategorien

Mehr zu Desktop finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by