pyhctsa.operations.information.first_min

pyhctsa.operations.information.first_min(y, min_what='mi-gaussian', extra_param=None)

Time of first minimum in a given self-correlation function.

Parameters:
y : array-like

The input time series.

min_what : str, optional

Correlation measure to minimize.

Autocorrelation:

  • 'ac': Autocorrelation.

Automutual information (AMI):

  • 'mi-gaussian': AMI using the Gaussian estimator (default; a monotonic function of the absolute autocorrelation, so not a nonlinear timescale).

  • 'mi': AMI using the Kraskov estimator, the same as 'mi-kraskov1' with the estimator’s default of 4 nearest neighbors (as in current hctsa; earlier versions of hctsa, and of pyhctsa, used the name 'mi' for the Gaussian estimator, which must now be requested as 'mi-gaussian').

  • 'mi-kraskov1': AMI using the Kraskov estimator (variant 1; 4 nearest neighbors, extra_param is not passed on).

  • 'mi-kraskov2': AMI using the Kraskov estimator (variant 2); extra_param is the number of nearest neighbors.

  • 'mi-hist': AMI using a histogram-based estimator; extra_param is the number of bins.

Default is 'mi-gaussian'.

extra_param : any, optional

Additional parameter required by the chosen min_what method (see above).

Returns:

The time of the first minimum. If the function keeps decreasing and no minimum is found, the length of the time series is returned (as in hctsa); NaN if a NaN is reached first (e.g. an AMI that cannot be computed because the series is too short).

Return type:

int