How to analyze different segments in a timetable?.
1 次查看(过去 30 天)
显示 更早的评论
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/759961/image.jpeg)
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
采纳的回答
Star Strider
2021-10-6
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
.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Time Series Events 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!