MATLAB: How to Segment EMG data into time intervals

datadata signal processingemgMATLAB

I have 2 minutes of filtered data that needs to be segmented into 20msec intervals, how would I go about doing that? It was collected at 2048 Hz and there is a total of 245762 data points.

Best Answer

One option is the Signal Processing Toolbox buffer function.
It uses samples as one of its arguments, however that is straightforward to calculate:
Fs = 2048; % Sampling Frequency (samples/sec)
segment = 0.02; % Segments (20 ms)
Samples = round(Fs * segment); % Sample Length
I use round here, however fix, floor or ceil would also work, depending on what you want.