Retime and combine timetables to new time vector in the Live Editor
The Synchronize Timetables task lets you interactively collect variables from all input timetables, synchronize them to a common time vector, and return the result as a single timetable. The effect is similar to a horizontal concatenation, though the input timetables can have different row times. The task also automatically generates MATLAB® code for your live script.
Using this task, you can:
Interpolate data values at new row times.
Aggregate data into time bins (for example, to create a timetable containing quarterly means from timetables containing monthly data).
Remove rows that have duplicate row times.
Make the output a regular one by specifying a uniform time step or sample rate.
To add the Synchronize Timetables task to a live script in the MATLAB Editor:
On the Live Editor tab, select Task > Synchronize Timetables.
In a code block in the script, type a relevant keyword, such as
Synchronize Timetables from the suggested command
This example shows how to use the Synchronize Timetables Live Editor task to synchronize data in input timetables.
First, load two small timetables from the
TT1 contains temperature measurements, and
TT2 contains humidity measurements.
Add the Synchronize Timetables task to your live script.
To specify new row times that are the union of the row times from
TT2, use the
Selection method menus.
To adjust data by filling gaps in the output timetable variables, use the
General rule menu. Select
Fill with missing as the rule. The task fills gaps with the missing value that is appropriate for the data type of each timetable variable. For numeric variables, the missing value is
You can fill gaps with interpolated values instead of
NaNs. Specify linear interpolation as the general rule.
Synchronize to a regular hourly time vector instead of the union of row times.
Input timetables— Names of timetables
Specify the names of input timetables from lists of all the nonempty timetables that are in the workspace.
You can specify the names of two timetables using the two drop-down lists provided. To specify three or more timetables, click the + button to the right of a drop-down list.
Selection method— Method for specifying row times
Specify the method for calculating new row times of the output timetable.
Times from timetables — Method for extracting row
times from one or more input timetables. For example, you can use the union of the
row times from all timetables, or the intersection, or the row times from the last
Time step — Length of time between consecutive
regularly spaced row times.
Sample rate — Sample rate or frequency for regularly
spaced row times.
Times from workspace — Workspace variable that is a
duration values. The
times in the vector become the row times of the output timetable. The times need not
be regularly spaced.
General rule— Rule for adjusting data values
Specify the rule for adjusting data values in the variables of the timetables. The rule applies to all variables from all input timetables unless exceptions are specified. You can resample or aggregate data values to:
Fill gaps with missing data indicators or a constant value.
Interpolate data values to the new row times. For example, resample data measured at 100 Hz to 200 Hz.
Aggregate data into time bins. For example, calculate a daily mean from data values measured at every hour.
Exceptions— Different rule or rules for adjusting specified variables
Click the Add button. Then specify a timetable variable from the drop-down lists of timetable names and variable names that appear. Select an input timetable from the first list, then one of its variables from the second list.
To adjust the data in the specified variable, select a rule from the third drop-down list, to the right of the list of variables. The rule for the exception can differ from the general rule.
To specify exceptions for other timetable variables, click the + button to the right of the first exception. New drop-down lists of timetable names, variable names, and rules appear below the previous exception.