Main Content

Synchronize Timetables

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.

Synchronize Timetables task in Live Editor

Open the Task

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 or timetable. Select Synchronize Timetables from the suggested command completions.


expand all

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 firstTT MAT-file. TT1 contains temperature measurements, and TT2 contains humidity measurements.

load firstTT

Add the Synchronize Timetables task to your live script.

  • To specify new row times that are the union of the row times from TT1 and 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 NaN.

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.

Related Examples


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.

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 timetable.

  • 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 vector of datetime or duration values. The times in the vector become the row times of the output timetable. The times need not be regularly spaced.

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.

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.

Introduced in R2020a