tf.keras.preprocessing.timeseries_dataset_from_array

Creates a dataset of sliding windows over a timeseries provided as array.

Used in the notebooks

Used in the tutorials

This function takes in a sequence of data-points gathered at equal intervals, along with time series parameters such as length of the sequences/windows, spacing between two sequence/windows, etc., to produce batches of timeseries inputs and targets.

data Numpy array or eager tensor containing consecutive data points (timesteps). Axis 0 is expected to be the time dimension.
targets Targets corresponding to timesteps in data. It should have same length as data. targets[i] should be the target corresponding to the window that starts at index i (see example 2 below). Pass None if you don't have target data (in this case the dataset will only yield the input data).
sequence_length Length of the output sequences (in number of timesteps).
sequence_stride Period between successive output sequences. For stride s, output samples would start at index data[i], data[i + s], data[i + 2 * s], etc.
sampling_rate Period between successive individual timesteps within sequences. For rate r, timesteps data[i], data[i + r], ... data[i + sequence_length] are used for create a sample sequence.
batch_size Number of timeseries samples in each batch (except maybe the last one).
shuffle Whether to shuffle output samples, or instead draw them in chronological order.
seed Optional int; random seed for shuffling.
start_index Optional int; data points earlier (exclusive) than start_index will not be used in the output sequences. This is useful to reserve part of the data for test or validation.
end_index Optional int; data points later (exclusive) than end_index will not be used in the output sequences. This is useful to reserve part of the data for test or validation.

A tf.data.Dataset instance. If targets was passed, the dataset yields tuple (batch_of_sequences, batch_of_targets). If not, the dataset yields only batch_of_sequences.

Example 1:

Consider indices [0, 1, ... 99]. With sequence_length=10, sampling_rate=2, sequence_stride=3, s