How to segment/timestamp time series data based on GMT unix epoch values
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have an Nx2 matrix where N=size of the time series where the values in column one are GMT unix epoch microseconds and the second column are data values such as voltage from an ECG sensor
For example:
Time (microseconds) Data (mv)
1) 1.58187589357166e+15 0.0149830624856947
2) 1.58187589357565e+15 0.0226207624424608
3) 1.58187589357965e+15 0.0127982248671193
4) 1.58187589358365e+15 0.00203405305053278
...
Is there a way I can segment the data (column 2) based on start and stop time values?
Say I want a numeric matrix of the data between 2) 1.58187589357565e+15 and 4) 1.58187589358365e+15, how would I create that (without necissarily knowing the indices since these are really large time series and it is difficult to manually search for the corresponding time values)?
I would use the sampling frequency to manually segment the data but I just learned from the manufacturer that this is not an accurate technique for my data
0 comentarios
Respuestas (1)
Prudhvi Peddagoni
el 19 de Oct. de 2020
Hi,
let
A= [ 1 10;
2 20;
3 30;
4 40;]
if you want to select data values(2nd column) for time which lies between 1 and 4 in the first column, you can do this:
index1= A(:,1)>1; %gives indexes of all time values with value greater than 1
index2=A(:,1)<4; %gives indexes of all time values with value less than 4
index=index1 & index2 % gives indexes off all time values that lie between 1 and 4
values=A(index, 2) % gives the required data values
% or you can do this in a single line like this
values= A(A(:,1)>1 & A(:,1)<4,2);
Hope this helps.
0 comentarios
Ver también
Categorías
Más información sobre Low-Level File I/O en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!