timetable

Methods

Method Reference: timetable.synchronize

timetable: tt = synchronize (tt1, tt2)
timetable: tt = synchronize (tt1, …, ttN)
timetable: tt = synchronize (…, newTimes)
timetable: tt = synchronize (…, method)
timetable: tt = synchronize (…, Name, Value)

Put several timetables on one set of row times and set them side by side.

tt = synchronize (tt1, tt2) returns a timetable holding the variables of both, at every row time either of them carries. Any number of timetables may be given, and they must all have row times of the same type.

newTimes says where the rows of the answer sit. It is a datetime or duration vector, one of the time units retime takes, 'regular' with a 'TimeStep' or a 'SampleRate', or one of:

'union'
Every time any of them carries. This is the default.
'intersection'
Only the times every one of them carries.
'commonrange'
Every time any of them carries that lies within the span they all cover.
'first', 'last'
The row times of the first or of the last timetable given.

A timetable with no rows says nothing about where the answer should sit and takes no part in choosing.

method and the options are retime’s, and one method serves every timetable: a method for each is not accepted.

Two timetables carrying a variable of the same name have both of them renamed for the timetable they came from, so a from tt1 and tt2 become a_tt1 and a_tt2. An operand that is an expression rather than a variable is known by its place in the call.

Where an operand is an eventtable, or carries one on its Events property, the result is an event table too and the operands’ event tables are merged: an outer join keyed on the event times and every variable the two share, ordered by those keys. The three properties saying which variables describe the events must agree, and the operation is refused where they do not.

See also: retime, timetable, horzcat, isregular

Source Code: timetable