Skip to main content

Compute correlation coefficients with uncertainties

Project description

pymccorrelation

A tool to calculate correlation coefficients for data, using bootstrapping and/or perturbation to estimate the uncertainties on the correlation coefficient. This was initially a python implementation of the Curran (2014) method for calculating uncertainties on Spearman's Rank Correlation Coefficient, but has since been expanded. Curran's original C implementation is MCSpearman (ASCL entry).

Currently the following correlation coefficients can be calculated (with bootstrapping and/or perturbation):

Kendall's tau can also calculated when some of the data are left/right censored, following the method described by Isobe+1986.

Requirements

  • python3
  • scipy
  • numpy

Usage

pymccorrelation exports a single function to the user (also pymccorrelation).

from pymccorrelation import pymccorrelation

[... load your data ...]

The correlation coefficient can be one of pearsonr, spearmanr, or kendallt.

For example, to compute the Pearson's r for a sample, using 1000 bootstrapping iterations to estimate the uncertainties:

res = pymccorrelation(data['x'], data['y]',
                      coeff='pearsonr',
                      Nboot=1000)

The output, res is a tuple of length 2, and the two elements are:

  • numpy array with the correlation coefficient (Pearson's r, in this case) percentiles (by default 16%, 50%, and 84%)
  • numpy array with the p-value percentiles (by default 16%, 50%, and 84%)

The percentile ranges can be adjusted using the percentiles keyword argument.

Additionally, if the full posterior distribution is desired, that can be obtained by setting the return_dist keyword argument to True. In that case, res becomes a tuple of length four:

  • numpy array with the correlation coefficient (Pearson's r, in this case) percentiles (by default 16%, 50%, and 84%)
  • numpy array with the p-value percentiles (by default 16%, 50%, and 84%)
  • numpy array with full set of correlation coefficient values from the bootstrapping
  • numpy array with the full set of p-values computed from the bootstrapping

Please see the docstring for the full set of arguments and information including measurement uncertainties (necessary for point perturbation) and for marking censored data.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymccorrelation-0.2.1.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

pymccorrelation-0.2.1-py3-none-any.whl (19.3 kB view details)

Uploaded Python 3

File details

Details for the file pymccorrelation-0.2.1.tar.gz.

File metadata

  • Download URL: pymccorrelation-0.2.1.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for pymccorrelation-0.2.1.tar.gz
Algorithm Hash digest
SHA256 3473bd620eac46fa35c76ca8601835f34ecea4d84c7e01251d598a5647802c80
MD5 f66e4696653827880daa1b66291de9da
BLAKE2b-256 a948f2335a72b7e874c927bb149388d9bf69804bddfc9b4c6b55dd8f9b80a294

See more details on using hashes here.

File details

Details for the file pymccorrelation-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pymccorrelation-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 19.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for pymccorrelation-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ad75767031d20e2f8c8a43856167819469f6f36bb30074e9cb75bae5616a943f
MD5 736d72a9ab0f59c269e974ebab922653
BLAKE2b-256 bc73fdfeef937db5476964f06525d900b9d9501f5d89fadb2e4770d29456ed70

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page