pyhctsa.operations.symbolic.motif_three

pyhctsa.operations.symbolic.motif_three(y, cg_how='quantile', tau=1)

Motifs in a coarse-graining of a time series to a 3-letter alphabet.

Parameters:
y : array-like

Time series to analyze.

cg_how : {'quantile', 'diffquant'}, optional

The coarse-graining method to use:

  • ’quantile’: equiprobable alphabet by time-series value

  • ’diffquant’: equiprobably alphabet by time-series increments

Default is 'quantile'.

tau : int or str, optional

The lag of the words. The whole series is coarse-grained to letters s, and the words of length L are (s[t], s[t + tau], ..., s[t + (L-1)*tau]) for every t, as in a time-delay embedding; for ‘diffquant’ the letters code the increments at lag tau, y[t + tau] - y[t]. An integer, or a rule that sets it from the series: 'ac' (the first zero-crossing of the autocorrelation function), 'ac1e' (the floor of its first 1/e crossing) or 'mi' (the smaller of the first minimum of the Kraskov automutual information and the ‘ac1e’ delay), or one of these computed from the ranks of the series ('ac-rank', 'ac1e-rank', 'mi-rank'); see pyhctsa.utils.get_tau(). With ‘quantile’ and a rank-based rule, the result is unchanged by a strictly increasing transformation of the series. Default is 1. NaN is returned if tau cannot be determined or leaves no symbol, and each output is NaN for a word length with no word.

Returns:

Statistics on words of length 1, 2, 3, and 4.

Return type:

dict