segment exact time of signal

2 views (last 30 days)
Farhad Abedinzadeh
Farhad Abedinzadeh on 2 Feb 2022
Answered: Lei Hou on 15 Feb 2022
Hi dear viewers.
I want to extract the exact time of the signal,for example I have a signal which is 1*1000000 in size.
and the sampling frequency is 200hz,I want to extract 00:14:36 to 00:16:12 from this signal.
would you please help me?

Accepted Answer

Lei Hou
Lei Hou on 15 Feb 2022
Hi Farhad,
You can also use timetable + timerange indexing to complete your task.
>> tt = array2timetable(val','StartTime',duration(0,0,0),'SampleRate',200);
>> tt(timerange(duration(0,14,36),duration(0,16,12),'closed'),:)
ans =
19201×1 timetable
Time Var1
________ ____
00:14:36 25
00:14:36 25
00:14:36 24
00:14:36 25
00:14:36 25
00:14:36 25
00:14:36 25
: :
00:16:11 34
00:16:11 37
00:16:11 35
00:16:11 35
00:16:11 37
00:16:11 37
00:16:12 34
Display all 19201 rows.

More Answers (1)

Benjamin Thompson
Benjamin Thompson on 2 Feb 2022
So this should be the calculation for the start and end sample numbers:
>> (14*60+36)*200
ans =
175200
>> (16*60+12)*200
ans =
194400
Then if you have a million-element vector D with your data, you can extract what you want as:
D(175200:194400)

Community Treasure Hunt

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

Start Hunting!