MATLAB: Interpolate and synchronize two time series

synchronizetimeserie

Hello,
I'm trying to match two different timeseries to one common time-vector. The problem is, there are two matrices which I want to match. First of all I'll give an example:
matrix_A
TimeA DataA_1 DataA_2 DataA_3
0.27 63 57 12.3
0.31 65 47 11.3
0.54 69 53 11.7
0.82 71 51 11.9
0.98 70 52 12.1
1.24 69 49 12.4
--------------------------
matrix_B
TimeB DataB_1 DataB_2
0.13 113 23.7
0.54 112 25.8
0.69 110 24.4
0.85 115 23.5
1.03 113 25.9
Now i want to match this two series of data to one matrix with equal time gaps, for example 0.25.
My idea is: First interpolate both data-series to get values at 0; 0.25; 0.5; 0.75; 1.0; 1.25 … and then safe them in one single matrix, that looks like:
matrix_finish
Time DataA_1 DataA_2 DataA_3 DataB_1 DataB_2
0 ... ... ... ... ...
0.25
0.5
0.75
1.0
1.25
...
I know, there are functions in matlab like synchronize and interp1 or something, but it looks like I am to stupid to use them correctly for my problem.
Thanks for any help.

Best Answer

  1. Create two timetables using table2timetable (you have to converted the time to duration or datetime format)
  2. Use synchronize OR retime with a common time vector.
Easy peasy. Upload some data and I will show you how.