PyMARE: Python Meta-Analysis & Regression Engine
Project description
PyMARE: Python Meta-Analysis & Regression Engine
A Python library for mixed-effects meta-regression (including meta-analysis).
PyMARE is alpha software under heavy development; we reserve the right to make major changes to the API.
Quickstart
Install PyMARE from PyPI:
pip install pymare
Or for the bleeding-edge GitHub version:
pip install git+https://github.com/neurostuff/pymare.git
Suppose we have parameter estimates from 8 studies, along with corresponding variances, and a single (fixed) covariate:
y = np.array([-1, 0.5, 0.5, 0.5, 1, 1, 2, 10]) # study-level estimates
v = np.array([1, 1, 2.4, 0.5, 1, 1, 1.2, 1.5]) # study-level variances
X = np.array([1, 1, 2, 2, 4, 4, 2.8, 2.8]) # a fixed study-level covariate
We can conduct a mixed-effects meta-regression using restricted maximum-likelihood (ReML)estimation in PyMARE using the high-level meta_regression
function:
from pymare import meta_regression
result = meta_regression(y, v, X, names=['my_cov'], add_intercept=True,
method='REML')
print(result.to_df())
This produces the following output:
name estimate se z-score p-val ci_0.025 ci_0.975
0 intercept -0.106579 2.993715 -0.035601 0.971600 -5.974153 5.760994
1 my_cov 0.769961 1.113344 0.691575 0.489204 -1.412153 2.952075
Alternatively, we can achieve the same outcome using PyMARE's object-oriented API (which the meta_regression
function wraps):
from pymare import Dataset
from pymare.estimators import VarianceBasedLikelihoodEstimator
# A handy container we can pass to any estimator
dataset = Dataset(y, v, X)
# Estimator class for likelihood-based methods when variances are known
estimator = VarianceBasedLikelihoodEstimator(method='REML')
# All estimators accept a `Dataset` instance as the first argument to `.fit()`
estimator.fit(dataset)
# Post-fitting we can obtain a MetaRegressionResults instance via .summary()
results = estimator.summary()
# Print summary of results as a pandas DataFrame
print(result.to_df())
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file PyMARE-0.0.1.tar.gz
.
File metadata
- Download URL: PyMARE-0.0.1.tar.gz
- Upload date:
- Size: 24.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2d06eb5e0a5c4eae3fbbc6334f2b59e1438c27705bab3f9d721d0e2a116fdbdb |
|
MD5 | db6a46c6481059565ea59fab6bb60f73 |
|
BLAKE2b-256 | 6529bbdaeffd74c8993d4f952c7213ad1088649f36de1be6a7f54ac28f7d5ca2 |
File details
Details for the file PyMARE-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: PyMARE-0.0.1-py3-none-any.whl
- Upload date:
- Size: 28.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f60c4515b8fae7ee1cbbeae7d751d79d93080785d12ad97617d0a4917b13430c |
|
MD5 | afdc3bddaae796dc5bfaaef09755302e |
|
BLAKE2b-256 | b501c04f9a8499328a40afb10dd70f64eccbd44d7f2b0832a201d485e1b06727 |