> For the complete documentation index, see [llms.txt](https://time-series-features.gitbook.io/pyspi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://time-series-features.gitbook.io/pyspi/information-about-pyspi/spis/table-of-spis.md).

# Table of SPIs

In the table below, we provide a high-level overview of the *pyspi* library of statistics for pairwise interactions (SPIs).

{% hint style="info" %}
For further details about the specific implementation of each SPI, refer to the [source code ](https://github.com/DynamicsAndNeuralSystems/pyspi/tree/main/pyspi/statistics)on our GitHub repository. We also provide a detailed list of many of the statistics in this toolkit in the [Supplementary Material](https://www.readcube.com/articles/supplement?doi=10.1038%2Fs43588-023-00519-x\&index=0) of the original *pyspi* *paper.*
{% endhint %}

## Categories

<table data-view="cards"><thead><tr><th align="center"></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td align="center"><em><strong>Basic Statistics (42 SPIs)</strong></em></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2F04JW1jAc7uonPRpGLN1y%2Fbasic_new.png?alt=media&amp;token=8506aba5-b007-403f-85bf-9c590da8a0ec">basic_new.png</a></td><td><a href="#basic-statistics-42-spis">#basic-statistics-42-spis</a></td></tr><tr><td align="center"><p><em><strong>Distance Similarity</strong></em></p><p><em><strong>(42 SPIs)</strong></em></p></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2Fou8MAANzS09oXz0rYJMK%2Fdist_sim_new.png?alt=media&amp;token=df0579ed-0a45-462f-a12a-7fc612c072a8">dist_sim_new.png</a></td><td><a href="#distance-similarity-42-spis">#distance-similarity-42-spis</a></td></tr><tr><td align="center"><em><strong>Causal Inference (13 SPIs)</strong></em></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2FZqUu9yKgXuX8YOCdBfrP%2Fcausal_new.png?alt=media&amp;token=c506f1ec-83e8-4f5a-80bc-a439767ba505">causal_new.png</a></td><td><a href="#causal-inference-13-spis">#causal-inference-13-spis</a></td></tr><tr><td align="center"><p><em><strong>Information Theory</strong></em></p><p><em><strong>(43 SPIs)</strong></em></p></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2FLG97ZK5m8qfQ4wt6TynE%2Finfo_theory_new.png?alt=media&amp;token=9dd2947d-7a2f-4e3a-9cc8-2caf09fab9a7">info_theory_new.png</a></td><td><a href="#information-theory-43-spis">#information-theory-43-spis</a></td></tr><tr><td align="center"><em><strong>Spectral (120 SPIs)</strong></em></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2F3gmixHLlkWwO5XrcxUXA%2Fspectral_new.png?alt=media&amp;token=42ecf842-1aa8-4591-a32b-7a54b6535c23">spectral_new.png</a></td><td><a href="#spectral-120-spis">#spectral-120-spis</a></td></tr><tr><td align="center"><em><strong>Miscellaneou</strong></em><strong>s (25 SPIs)</strong></td><td><a href="https://636746764-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIw3ORxNbDkeyBcdB5svU%2Fuploads%2FiqylwP8SdOFCOefBgvBd%2Fmiscellaneous_new.png?alt=media&amp;token=d6faed67-89c2-4409-8770-5cc435968daa">miscellaneous_new.png</a></td><td><a href="#miscellaneous-24-spis">#miscellaneous-24-spis</a></td></tr></tbody></table>

***

## Modifiers

Many of the algorithms we implement include a number of free parameters that we set either using optimisation procedures or fix to a small number of sensible predefined settings. The combination of both the **parameter configuration** and the **different summary statistics** gives each SPI in the library a **unique identifier** (as a string).

As an example, consider the SPI identifier `xcorr_mean_sig-True.` Here, `xcorr` refers to the method of cross-correlation between x and y, which itself does not provide a single statistic, but rather a correlogram. However, the two additional modifiers that are separated by underscores in the identifier, `mean` and `sig-True`, collectively return a scalar value. The first modifier, `mean` indicates that we are taking the average across lags of the cross-correlation function. The second modifier, `sig-True` indicates that we will only take the mean over statistically significant lags. By using different parameters and modifiers of distinct methodologies, we obtain hundreds of unique SPIs.

In the tables below, we make the distinction between the "base identifier" (`xcorr` in the above example) and the estimator(s) (e.g., `xcorr_mean_sig-True`) which include the combination of base identifier and any additional modifiers.

***

## Basic Statistics (42 SPIs)

{% hint style="info" %}
Basic statistics include SPIs that are foundational to statistical analysis, often because they are widely applicable, relatively straightforward to understand and compute, and can form the basis for more complex methods. For further details about the specific implementation of each basic SPI, refer to the [source code](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/basic.py) on our GitHub repository.
{% endhint %}

<table><thead><tr><th width="218">SPI name</th><th width="149">Base Identifier</th><th width="380">Estimator(s)</th></tr></thead><tbody><tr><td>Covariance</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#covariance-estimators"><code>cov</code></a></td><td><ul><li><code>cov_EmpiricalCovariance</code></li><li><code>cov_EllipticEnvelope</code></li><li><code>cov_MinCovDet</code></li><li><code>cov_GraphicalLasso</code></li><li><code>cov_GraphicalLassoCV</code></li><li><code>cov_ShrunkCovariance</code></li><li><code>cov_LedoitWolf</code></li><li><code>cov_OAS</code></li></ul></td></tr><tr><td>Precision</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#precision-estimators"><code>prec</code></a></td><td><ul><li><code>prec_EmpiricalCovarianc</code></li><li><code>prec_EllipticEnvelope</code></li><li><code>prec_MinCovDet</code></li><li><code>prec_GraphicalLasso</code></li><li><code>prec_GraphicalLassoCV</code></li><li><code>prec_LedoitWolf</code></li><li><code>prec_OAS</code></li><li><code>prec_ShrunkCovariance</code></li></ul></td></tr><tr><td>Spearman's rank-correlation coefficient</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#spearmans-rank-correlation-coefficient-estimator"><code>spearmanr</code></a></td><td><ul><li><code>spearmanr</code></li><li><code>spearmanr-sq</code></li></ul></td></tr><tr><td>Kendall's rank-correlation coefficient</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#kendalls-rank-correlation-coefficient-estimator"><code>kendalltau</code></a></td><td><ul><li><code>kendalltau</code></li><li><code>kendalltau-sq</code></li></ul></td></tr><tr><td>Cross correlation</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#cross-correlation-estimators"><code>xcorr</code></a></td><td><ul><li><code>xcorr_max_sig-True</code></li><li><code>xcorr_mean_sig-True</code></li><li><code>xcorr_mean_sig-False</code></li></ul></td></tr><tr><td>Squared cross correlation</td><td><a href="/pyspi/information-about-pyspi/spis/spi-descriptions/basic-statistics.md#squared-cross-correlation-estimators"><code>xcorr-sq</code></a></td><td><ul><li><code>xcorr-sq_max_sig-True</code></li><li><code>xcorr-sq_mean_sig-True</code></li><li><code>xcorr-sq_mean_sig-False</code></li></ul></td></tr><tr><td>Squared covariance</td><td><code>cov-sq</code></td><td><ul><li><code>cov-sq_EmpiricalCovariance</code></li><li><code>cov-sq_EllipticEnvelope</code></li><li><code>cov-sq_GraphicalLasso</code></li><li><code>cov-sq_GraphicalLassoCV</code></li><li><code>cov-sq_LedoitWolf</code></li><li><code>cov-sq_MinCovDet</code></li><li><code>cov-sq_OAS</code></li><li><code>cov-sq_ShrunkCovariance</code></li></ul></td></tr><tr><td>Squared precision</td><td><code>prec-sq</code></td><td><ul><li><code>prec-sq_EmpiricalCovariance</code></li><li><code>prec-sq_EllipticEnvelope</code></li><li><code>prec-sq_GraphicalLasso</code></li><li><code>prec-sq_GraphicalLassoCV</code></li><li><code>prec-sq_LedoitWolf</code></li><li><code>prec-sq_MinCovDet</code></li><li><code>prec-sq_OAS</code></li><li><code>prec-sq_ShrunkCovariance</code></li></ul></td></tr></tbody></table>

***

## Distance Similarity (42 SPIs)

{% hint style="info" %}
Distance-based similarity measures aim to establish statistical similarity or independence based on the pairwise distance between bivariate observations. For further details about the specific implementation of each distance similarity SPI, refer to the [source code](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/distance.py) on our GitHub repository.
{% endhint %}

<table><thead><tr><th width="225">SPI Name</th><th width="143">Base Identifier</th><th width="385">Estimator(s)</th></tr></thead><tbody><tr><td>Pairwise distance</td><td><code>pdist</code></td><td><ul><li><code>pdist_euclidean</code></li><li><code>pdist_cityblock</code></li><li><code>pdist_cosine</code></li><li><code>pdist_chebyshev</code></li><li><code>pdist_canberra</code></li><li><code>pdist_braycurtis</code></li></ul></td></tr><tr><td>Distance correlation</td><td><code>dcorr</code></td><td><ul><li><code>dcorr</code></li><li><code>dcorr_biased</code></li></ul></td></tr><tr><td>Cross distance correlation</td><td><code>dcorrx</code></td><td><ul><li><code>dcorrx_maxlag-1</code></li><li><code>dcorrx_maxlag-10</code></li></ul></td></tr><tr><td>Multiscale graph correlation</td><td><code>mgc</code></td><td><ul><li><code>mgc</code></li></ul></td></tr><tr><td>Cross multiscale graph correlation</td><td><code>mgcx</code></td><td><ul><li><code>mgcx_maxlag-1</code></li><li><code>mgcx_maxlag-10</code></li></ul></td></tr><tr><td>Hilbert-Schmidt Independence Criterion</td><td><code>hsic</code></td><td><ul><li><code>hsic</code></li><li><code>hsic_biased</code></li></ul></td></tr><tr><td>Heller-Heller-Gorfine Independence Criterion</td><td><code>hhg</code></td><td><ul><li><code>hhg</code></li></ul></td></tr><tr><td>Dynamic time warping</td><td><code>dtw</code></td><td><ul><li><code>dtw</code></li><li><code>dtw_constraint-itakura</code></li><li><code>dtw_constraint-sakoe_chiba</code></li></ul></td></tr><tr><td>Longest common subsequence</td><td><code>lcss</code></td><td><ul><li><code>lcss</code></li><li><code>lcss_constraint-itakura</code></li><li><code>lcss_constraint-sakoe_chiba</code></li></ul></td></tr><tr><td>Soft dynamic time warping</td><td><code>softdtw</code></td><td><ul><li><code>softdtw</code></li><li><code>softdtw_constraint-itakura</code></li><li><code>softdtw_constraint-sakoe_chiba</code></li></ul></td></tr><tr><td>Barycenter</td><td><code>bary</code></td><td><ul><li><code>bary_euclidean_mean</code></li><li><code>bary_euclidean_max</code></li><li><code>bary_dtw_mean</code></li><li><code>bary_dtw_max</code></li><li><code>bary_softdtw_mean</code></li><li><code>bary_softdtw_max</code></li><li><code>bary_sgddtw_mean</code></li><li><code>bary_sgddtw_max</code></li></ul></td></tr><tr><td>Squared Barycenter</td><td><code>bary-sq</code></td><td><ul><li><code>bary-sq_euclidean_mean</code></li><li><code>bary-sq_euclidean_max</code></li><li><code>bary-sq_dtw_mean</code></li><li><code>bary-sq_dtw_max</code></li><li><code>bary-sq_sgddtw_mean</code></li><li><code>bary-sq_sgddtw_max</code></li><li><code>bary-sq_softdtw_mean</code></li><li><code>bary-sq_softdtw_max</code></li></ul></td></tr><tr><td>Gromov-Wasserstein distance</td><td><code>gwtau</code></td><td><ul><li><code>gwtau</code></li></ul></td></tr></tbody></table>

***

## Causal Inference (13 SPIs)

{% hint style="info" %}
Causal inference-based statistics aim to establish directed independence from bivariate observations, typically making assumptions about the underlying model. For further details about the specific implementation of each causal inference SPI, refer to the [source code](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/causal.py) on our GitHub repository.
{% endhint %}

| SPI Name                                       | Base Identifier | Estimator(s)                                                                                                                                                                                                                                                                                                                                          |
| ---------------------------------------------- | --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Additive noise model                           | `anm`           | <ul><li><code>anm</code></li></ul>                                                                                                                                                                                                                                                                                                                    |
| Information-geometric conditional independence | `igci`          | <ul><li><code>igci</code></li></ul>                                                                                                                                                                                                                                                                                                                   |
| Conditional distribution similarity fit        | `cds`           | <ul><li><code>cds</code></li></ul>                                                                                                                                                                                                                                                                                                                    |
| Regression error-based causal inference        | `reci`          | <ul><li><code>reci</code></li></ul>                                                                                                                                                                                                                                                                                                                   |
| Convergent cross-mapping                       | `ccm`           | <ul><li><code>ccm\_E-1\_mean</code></li><li><code>ccm\_E-1\_max</code></li><li><code>ccm\_E-1\_diff</code></li><li><code>ccm\_E-10\_mean</code></li><li><code>ccm\_E-10\_max</code></li><li><code>ccm\_E-10-diff</code></li><li><code>ccm\_E-None\_mean</code></li><li><code>ccm\_E-None\_max</code></li><li><code>ccm\_E-None\_diff</code></li></ul> |

***

## Information Theory (43 SPIs)

{% hint style="info" %}
Information theoretic based similarity measures which are either intended to operate on serially independent observations or bivariate time series. For further details about the specific implementation of each information theoretic SPI, refer to the [source code](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/infotheory.py) on our GitHub repository.
{% endhint %}

<table><thead><tr><th width="212">SPI Name</th><th width="148">Base Identifier</th><th width="365">Estimator(s)</th></tr></thead><tbody><tr><td>Joint entropy</td><td><code>je</code></td><td><ul><li><code>je_gaussian</code></li><li><code>je_kozachenko</code></li><li><code>je_kernel_W-0.5</code></li></ul></td></tr><tr><td>Conditional entropy</td><td><code>ce</code></td><td><ul><li><code>ce_gaussian</code></li><li><code>ce_kozachenko</code></li><li><code>ce_kernel_W-0.5</code></li></ul></td></tr><tr><td>Mutual information</td><td><code>mi</code></td><td><ul><li><code>mi_gaussian</code></li><li><code>mi_kraskov_NN-4</code></li><li><code>mi_kraskov_NN-4_DCE</code></li><li><code>mi_kernel_W-0.25</code></li></ul></td></tr><tr><td>Time-lagged mutual information</td><td><code>tlmi</code></td><td><ul><li><code>tlmi_gaussian</code></li><li><code>tlmi_kraskov_NN-4</code></li><li><code>tlmi_kraskov_NN-4_DCE</code></li><li><code>tlmi_kernel_W-0.25</code></li></ul></td></tr><tr><td>Transfer entropy</td><td><code>te</code></td><td><ul><li><code>te_kraskov_NN-4_k-max-10_tau-max-4</code></li><li><code>te_kraskov_NN-4_DCE_k-max-10_tau-max-4</code></li><li><code>te_kraskov_NN-4_DCE_k-1_kt-1_l-1_lt-1</code></li><li><code>te_kraskov_NN-4_DCE_k-2_kt-1_l-1_lt-1</code></li><li><code>te_kraskov_NN-4_k-1_kt-1_l-1_lt-1</code></li><li><code>te_kernel_W-0.25_k-1</code></li><li><code>te_symbolic_k-1_kt-1_l-1_lt-1</code></li><li><code>te_symbolic_k-10_kt-1_l-1_lt-1</code></li></ul></td></tr><tr><td>Granger causality</td><td><code>gc</code></td><td><ul><li><code>gc_gaussian_k-max-10_tau-max-2</code></li><li><code>gc_gaussian_k-1_kt-1_l-1_lt-1</code></li></ul></td></tr><tr><td>Causally conditioned entropy</td><td><code>cce</code></td><td><ul><li><code>cce_gaussian</code></li><li><code>cce_kozachenko</code></li><li><code>cce_kernel_W-0.5</code></li></ul></td></tr><tr><td>Directed information</td><td><code>di</code></td><td><ul><li><code>di_gaussian</code></li><li><code>di_kozachenko</code></li><li><code>di_kernel_W-0.5</code></li></ul></td></tr><tr><td>Stochastic interaction</td><td><code>si</code></td><td><ul><li><code>si_gaussian_k-1</code></li><li><code>si_kozachenko_k-1</code></li><li><code>si_kernel_W-0.5_k-1</code></li></ul></td></tr><tr><td>Integrated information</td><td><code>phi</code></td><td><ul><li><code>phi_star_t-1_norm-0</code></li><li><code>phi_star_t-1_norm-1</code></li><li><code>phi_Geo_t-1_norm-0</code></li><li><code>phi_Geo_t-1_norm-1</code></li></ul></td></tr><tr><td>Cross-Map Entropy</td><td><code>xme</code></td><td><ul><li><code>xme_kozachenko_k1</code></li><li><code>xme_kozachenko_k10</code></li><li><code>xme_gaussian_k1</code></li><li><code>xme_gaussian_k10</code></li><li><code>xme_kernel_k1</code></li><li><code>xme_kernel_k10</code></li></ul></td></tr></tbody></table>

***

## Spectral (120 SPIs)

{% hint style="info" %}
Spectral SPIs are computed in the frequency or time-frequency domain, using either Fourier or wavelet transformations to derive spectral matrices. For further details about the specific implementation of each spectral SPI, refer to the [source code ](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/spectral.py)on our GitHub repository.
{% endhint %}

<table><thead><tr><th width="161">SPI Name</th><th width="168">Base Identifier</th><th>Estimator(s)</th></tr></thead><tbody><tr><td>Coherence magnitude</td><td><code>cohmag</code></td><td><ul><li><code>cohmag_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>cohmag_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>cohmag_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>cohmag_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>cohmag_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>cohmag_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Coherence phase</td><td><code>phase</code></td><td><ul><li><code>phase_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>phase_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>phase_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>phase_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>phase_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>phase_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Group delay</td><td><code>gd</code></td><td><ul><li><code>gd_multitaper_delay_fs-1_fmin-0_fmax-0-5</code></li><li><code>gd_multitaper_delay_fs-1_fmin-0_fmax-0-25</code></li><li><code>gd_multitaper_delay_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Phase slope index</td><td><code>psi</code></td><td><ul><li><code>psi_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>psi_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>psi_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>psi_wavelet_mean_fs-1_fmin-0_fmax-0-5_mean</code></li><li><code>psi_wavelet_mean_fs-1_fmin-0_fmax-0-25_mean</code></li><li><code>psi_wavelet_mean_fs-1_fmin-0-25_fmax-0-5_mean</code></li><li><code>psi_wavelet_max_fs-1_fmin-0_fmax-0-5_max</code></li><li><code>psi_wavelet_max_fs-1_fmin-0_fmax-0-25_max</code></li><li><code>psi_wavelet_max_fs-1_fmin-0-25_fmax-0-5_max</code></li></ul></td></tr><tr><td>Imaginary coherence</td><td><code>icoh</code></td><td><ul><li><code>icoh_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>icoh_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>icoh_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>icoh_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>icoh_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>icoh_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Phase locking value</td><td><code>plv</code></td><td><ul><li><code>plv_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>plv_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>plv_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>plv_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>plv_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>plv_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Pairwise phase consistency</td><td><code>ppc</code></td><td><ul><li><code>ppc_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>ppc_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>ppc_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>ppc_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>ppc_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>ppc_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Phase lag index</td><td><code>pli</code></td><td><ul><li><code>pli_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>pli_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>pli_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>pli_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>pli_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>pli_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Weighted phase lag index</td><td><code>wpli</code></td><td><ul><li><code>wpli_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>wpli_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>wpli_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>wpli_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>wpli_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>wpli_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Debiased squared phase lag index</td><td><code>dspli</code></td><td><ul><li><code>dspli_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>dspli_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>dspli_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>dspli_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>dspli_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>dspli_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Debiased squared weighted phase lag index</td><td><code>dswpli</code></td><td><ul><li><code>dswpli_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>dswpli_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>dswpli_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>dswpli_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>dswpli_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>dswpli_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Directed transfer function</td><td><code>dtf</code></td><td><ul><li><code>dtf_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>dtf_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>dtf_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>dtf_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>dtf_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>dtf_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Direct directed transfer function</td><td><code>ddtf</code></td><td><ul><li><code>ddtf_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>ddtf_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>ddtf_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>ddtf_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>ddtf_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>ddtf_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Directed coherence</td><td><code>dcoh</code></td><td><ul><li><code>dcoh_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>dcoh_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>dcoh_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>dcoh_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>dcoh_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>dcoh_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Partial directed coherence</td><td><code>pdcoh</code></td><td><ul><li><code>pdcoh_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>pdcoh_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>pdcoh_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>pdcoh_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>pdcoh_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>pdcoh_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Generalised partial directed coherence</td><td><code>gpdcoh</code></td><td><ul><li><code>gpdcoh_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>gpdcoh_multitaper_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>gpdcoh_multitaper_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>gpdcoh_multitaper_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>gpdcoh_multitaper_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>gpdcoh_multitaper_max_fs-1_fmin-0-25_fmax-0-5</code></li></ul></td></tr><tr><td>Spectral granger causality</td><td><code>sgc</code></td><td><ul><li><code>sgc_nonparametric_mean_fs-1_fmin-0_fmax-0-5</code></li><li><code>sgc_nonparametric_mean_fs-1_fmin-0_fmax-0-25</code></li><li><code>sgc_nonparametric_mean_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>sgc_nonparametric_max_fs-1_fmin-0_fmax-0-5</code></li><li><code>sgc_nonparametric_max_fs-1_fmin-0_fmax-0-25</code></li><li><code>sgc_nonparametric_max_fs-1_fmin-0-25_fmax-0-5</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-5_order-None</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-25_order-None</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0-25_fmax-0-5_order-None</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-5_order-1</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-25_order-1</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0-25_fmax-0-5_order-1</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-5_order-20</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0_fmax-0-25_order-20</code></li><li><code>sgc_parametric_mean_fs-1_fmin-0-25_fmax-0-5_order-20</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-5_order-None</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-25_order-None</code></li><li><code>sgc_parametric_max_fs-1_fmin-0-25_fmax-0-5_order-None</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-5_order-1</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-25_order-1</code></li><li><code>sgc_parametric_max_fs-1_fmin-0-25_fmax-0-5_order-1</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-5_order-20</code></li><li><code>sgc_parametric_max_fs-1_fmin-0_fmax-0-25_order-20</code></li><li><code>sgc_parametric_max_fs-1_fmin-0-25_fmax-0-5_order-20</code></li></ul></td></tr></tbody></table>

***

## Miscellaneous (25 SPIs)

{% hint style="info" %}
A small number of methods which do not fit into any of the previous categories. For further details about the specific implementation of each miscellaneous SPI, refer to the [source code](https://github.com/DynamicsAndNeuralSystems/pyspi/blob/main/pyspi/statistics/misc.py) on our GitHub repository.
{% endhint %}

<table><thead><tr><th width="200">SPI Name</th><th width="145">Base Identifier</th><th>Estimator(s)</th></tr></thead><tbody><tr><td>Linear model fit</td><td><code>lmfit</code></td><td><ul><li><code>lmfit_SGDRegressor</code></li><li><code>lmfit_Ridge</code></li><li><code>lmfit_Lasso</code></li><li><code>lmfit_ElasticNet</code></li><li><code>lmfit_BayesianRidge</code></li></ul></td></tr><tr><td>Gaussian process model fit</td><td><code>gpfit</code></td><td><ul><li><code>gpfit_DotProduct</code></li><li><code>gpfit_RBF</code></li></ul></td></tr><tr><td>Cointegration</td><td><code>coint</code></td><td><ul><li><code>coint_johansen_max_eig_stat_order-0_ardiff-10</code></li><li><code>coint_johansen_trace_stat_order-0_ardiff-10</code></li><li><code>coint_johansen_max_eig_stat_order-0_ardiff-1</code></li><li><code>coint_johansen_trace_stat_order-0_ardiff-1</code></li><li><code>coint_johansen_max_eig_stat_order-1_ardiff-10</code></li><li><code>coint_johansen_trace_stat_order-1_ardiff-10</code></li><li><code>coint_johansen_max_eig_stat_order-1_ardiff-1</code></li><li><code>coint_johansen_trace_stat_order-1_ardiff-1</code></li><li><code>coint_aeg_tstat_trend-c_autolag-aic_maxlag-10</code></li><li><code>coint_aeg_tstat_trend-ct_autolag-aic_maxlag-10</code></li><li><code>coint_aeg_tstat_trend-ct_autolag-bic_maxlag-10</code><br></li></ul></td></tr><tr><td>Power envelope correlation</td><td><code>pec</code></td><td><ul><li><code>pec</code></li><li><code>pec_orth</code></li><li><code>pec_log</code></li><li><code>pec_orth_log</code></li><li><code>pec_orth_abs</code></li><li><code>pec_orth_log_abs</code></li></ul></td></tr><tr><td>Interdependence score</td><td><code>ids</code></td><td><ul><li><code>ids</code></li></ul></td></tr></tbody></table>

***

## Short Names

For SPIs in the [`sonnet`](/pyspi/information-about-pyspi/spis/spi-subsets.md) subset, we also include a unique \`short name' for easier reference. Click the short name for a brief summary of what the SPI calculates.

<table><thead><tr><th width="304">Short Name</th><th width="163">SPI</th><th>Estimator</th></tr></thead><tbody><tr><td><a data-footnote-ref href="#user-content-fn-1"><mark style="color:blue;"><strong><code>power_envelope_corr</code></strong></mark></a></td><td>Power envelope correlation</td><td><code>pec</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-2"><mark style="color:blue;"><strong><code>cointegration</code></strong></mark></a></td><td>Cointegration</td><td><code>coint_aeg_tstat_trend-ct_autolag-aic_maxlag-10</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-3"><mark style="color:blue;"><strong><code>PLI</code></strong></mark></a></td><td>Phase Lag Index</td><td><code>pli_multitaper_max_fs-1_fmin-0_fmax-0-5</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-4"><mark style="color:blue;"><strong><code>PSI_time_frequency</code></strong></mark></a></td><td>Phase Slope Index</td><td><code>psi_wavelet_mean_fs-1_fmin-0_fmax-0-5_mean</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-5"><mark style="color:blue;"><strong><code>PSI_frequency</code></strong></mark></a></td><td>Phase Slope Index</td><td><code>psi_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-6"><mark style="color:blue;"><strong><code>coherence_magnitude</code></strong></mark></a></td><td>Coherence Magnitude</td><td><code>cohmag_multitaper_mean_fs-1_fmin-0_fmax-0-5</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-7"><mark style="color:blue;"><strong><code>phi_star</code></strong></mark></a></td><td>Integrated Information</td><td><code>phi_star_t-1_norm-0</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-8"><mark style="color:blue;"><strong><code>DI</code></strong></mark></a></td><td>Directed Information</td><td><code>di_gaussian</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-9"><mark style="color:blue;"><strong><code>ANM</code></strong></mark></a></td><td>Additive Noise Model</td><td><code>anm</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-10"><mark style="color:blue;"><strong><code>transfer_entropy</code></strong></mark></a></td><td>Transfer Entropy</td><td><code>te_kraskov_NN-4_DCE_k-max-10_tau-max-4</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-11"><mark style="color:blue;"><strong><code>spectral_GC</code></strong></mark></a></td><td>Granger Causality</td><td><code>sgc_nonparametric_mean_fs-1_fmin-0_fmax-0-5</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-12"><mark style="color:blue;"><strong><code>barycenter_DTW</code></strong></mark></a></td><td>Dynamic Time Warping</td><td><code>bary_dtw_mean</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-13"><mark style="color:blue;"><strong><code>Pearson</code></strong></mark></a></td><td>Covariance</td><td><code>cov_EmpiricalCovariance</code></td></tr><tr><td><a data-footnote-ref href="#user-content-fn-14"><mark style="color:blue;"><strong><code>DTW</code></strong></mark></a></td><td>Dynamic Time Warping</td><td><code>dtw_constraint-itakura</code></td></tr></tbody></table>

***

[^1]: Measures the correlation between two amplitude envelopes of time series x and y.

[^2]: Measures whether the linear combination of time series x and y has a low order, measured with the Augmented Engle-Granger (AEG) two-step test with the Akiake Information Criterion (AIC) and a constant and linear trend (ct).

[^3]: Averages the sign of the per-taper phase difference as a measure of phase synchronisation for full frequency range.

[^4]: Measures information flow based on complex valued coherencey; calculated in the time-fequency domain for the full frequency range.

[^5]: Measures information flow based on complex-valued coherency; calcualted in the frequency domain for the full frequency range.

[^6]: Measures the linear association between two time series in the frequency domain; taking the mean coherence for the full frequency range.

[^7]: Integrated information proxy that measures the amount of loss of information due to the disconnection between the two time series; not normalised by entropy.

[^8]: Measures the information flow from source time series x to target time series y without any time-lags; uses Gaussian-distributed model.

[^9]: Additive noise model that tests for directed nonlinear dependence of x --> y.

[^10]: Captures information transfer from source time series x to target time series y using a Takens time-delay embedding with a maximum embedding length of 10 and a maximum time delay of 4.

[^11]: Frequency domain equivalent to Granger causality; computed via spectral transfer matrix and noise covariance for the full frequency range using a non-parametric approach.

[^12]: Barycenter aka univariate time series that minimises the sum of squared distances between the pair of time serie; aligned using expectation minimisation and summarised by taking the barycenter mean.

[^13]: Pearson's correlation using maximum likelihood estimate for covariance matrix computation.

[^14]: Minimum distance between potentially dilated time series through alignment using Itakura parallelogram global constraints.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://time-series-features.gitbook.io/pyspi/information-about-pyspi/spis/table-of-spis.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
