How to analyze different segments in a timetable?.

2 vues (au cours des 30 derniers jours)
Frank Pernett
Frank Pernett le 6 Oct 2021
Commenté : Star Strider le 7 Oct 2021
Hi I have a timetable with different physiologic measurements (example attached).
The first column is duration in seconds, and the last column is a time marker that means: 0 is off and 5 is on. When time marker is on, means that the recordings corresponds to the experiment. The other columns are physiological variables as the figure shows.
As the Time Mark shows we had 10 experiments. I would like to have advice on the best way to extract the duration of every experiment.
Thanks
  2 commentaires
Frank Pernett
Frank Pernett le 7 Oct 2021
Thanks!!
Star Strider
Star Strider le 7 Oct 2021
As always, my pleasure!
.

Connectez-vous pour commenter.

Réponse acceptée

Star Strider
Star Strider le 6 Oct 2021
Try this —
LD = load('timetable.mat');
AB001 = LD.AB001;
ExptMarker = AB001.fTimeMark; % Marker Vector
Lv = ExptMarker>0; % Logical Vector
ExptStart = strfind(Lv', [0 1])+1; % Start Indices
ExptStop = strfind(Lv', [1 0]); % Stop Indices
ExptIdxMtx = [ExptStart; ExptStop]'; % Index Matrix
ExptTimes = AB001.time(ExptIdxMtx); % Time Matrix
ExptDuration = ExptTimes(:,2) - ExptTimes(:,1) % Duration Vector
producing:
ExptDuration =
10×1 duration array
53 sec
70 sec
69 sec
77 sec
77 sec
91 sec
101 sec
107 sec
110 sec
121 sec
.

Plus de réponses (0)

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Produits


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by