A set of tools in Python for multiscale graph correlation and other statistical tests
Project description
The R version is available on CRAN and https://github.com/neurodata/r-mgc. The MATLAB version is available at https://github.com/neurodata/mgc-matlab.
mgcpy
mgcpy
is a Python package containing tools for independence testing using multiscale graph correlation and other statistical tests, that is capable of dealing with high dimensional and multivariate data.
- Overview
- Documentation
- System Requirements
- Installation Guide
- Setting up the development environment
- License
- Issues
Overview
mgcpy
aims to be a comprehensive independence testing package including commonly used independence tests and additional functionality such as two sample independence testing and a novel random forest-based independence test. These tests are not only included to benchmark MGC but to have a convenient location for users if they would prefer to utilize those tests instead. The package utilizes a simple class structure to enhance usability while also allowing easy extension of the package for developers. The package can be installed on all major platforms (e.g. BSD, GNU/Linux, OS X, Windows)from Python Package Index (PyPI) and GitHub.
Documenation
The official documentation with usage is at: https://mgc.neurodata.io/ ReadTheDocs: https://mgcpy.readthedocs.io/en/latest/
System Requirements
Hardware requirements
mgcpy
package requires only a standard computer with enough RAM to support the in-memory operations.
Software requirements
OS Requirements
This package is supported for macOS and Linux. The package has been tested on the following systems:
- macOS: Mojave (10.14.1)
- Linux: Ubuntu 16.04
Python Dependencies
mgcpy
mainly depends on the Python scientific stack.
numpy
scipy
Cython
scikit-learn
pandas
seaborn
Installation Guide:
Install from PyPi
pip3 install mgcpy
Install from Github
git clone https://github.com/neurodata/mgcpy
cd mgcpy
python3 setup.py install
sudo
, if requiredpython3 setup.py build_ext --inplace # for cython
, if you want to test in-place, first execute this
Setting up the development environment:
-
To build image and run from scratch:
- Install docker
- Build the docker image,
docker build -t mgcpy:latest .
- This takes 10-15 mins to build
- Launch the container to go into mgcpy's dev env,
docker run -it --rm --name mgcpy-env mgcpy:latest
-
Pull image from Dockerhub and run:
docker pull tpsatish95/mgcpy:latest
ordocker pull tpsatish95/mgcpy:development
docker run -it --rm -p 8888:8888 --name mgcpy-env tpsatish95/mgcpy:latest
ordocker run -it --rm -p 8888:8888 --name mgcpy-env tpsatish95/mgcpy:development
-
To run demo notebooks (from within Docker):
cd demos
jupyter notebook --ip 0.0.0.0 --no-browser --allow-root
- Then copy the url it generates, it looks something like this:
http://(0de284ecf0cd or 127.0.0.1):8888/?token=e5a2541812d85e20026b1d04983dc8380055f2d16c28a6ad
- Edit this:
(0de284ecf0cd or 127.0.0.1)
to:127.0.0.1
, in the above link and open it in your browser - Then open
mgc.ipynb
-
To mount/load local files into docker container:
- Do
docker run -it --rm -v <local_dir_path>:/root/workspace/ -p 8888:8888 --name mgcpy-env tpsatish95/mgcpy:latest
, replace<local_dir_path>
with your local dir path. - Do
cd ../workspace
when you are inside the container to view the mounted files. The mgcpy package code will be in/root/code
directory.
- Do
MGC Algorithm's Flow
Power Curves
- Recreated Figure 2 in https://arxiv.org/abs/1609.05148, with the addition of MDMR and Fast MGC
License
This project is covered under the Apache 2.0 License.
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 Distributions
File details
Details for the file mgcpy-0.4.0.tar.gz
.
File metadata
- Download URL: mgcpy-0.4.0.tar.gz
- Upload date:
- Size: 181.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a8e5fe4990c448d8a0b4724d800dfd3b2a81b2c9e988f60b2e9c3f60a68d6ca1 |
|
MD5 | dfdde4ea29dc5730550147d005643548 |
|
BLAKE2b-256 | 404ee0b0f5dd15342aeb1e6b1573af20ee1acb5f43868cd8f09de3491560fe84 |
File details
Details for the file mgcpy-0.4.0-cp37-cp37m-macosx_10_9_x86_64.whl
.
File metadata
- Download URL: mgcpy-0.4.0-cp37-cp37m-macosx_10_9_x86_64.whl
- Upload date:
- Size: 162.6 kB
- Tags: CPython 3.7m, macOS 10.9+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55bb3a18456a4fce9e3f2a7fd488acec9431e2e9d7fba3143d7f9602d0e357c5 |
|
MD5 | 19d96a926258030182ae9cf674fc38c0 |
|
BLAKE2b-256 | b94fe9703c959e47ad87725d36192c993e007622757844b89bfe0d6efece73e2 |
File details
Details for the file mgcpy-0.4.0-cp37-cp37m-macosx_10_7_x86_64.whl
.
File metadata
- Download URL: mgcpy-0.4.0-cp37-cp37m-macosx_10_7_x86_64.whl
- Upload date:
- Size: 161.9 kB
- Tags: CPython 3.7m, macOS 10.7+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bdf15f38fa72f6f19bd27a8ced79e5f33260fb9d26a7817de11f15cdd01966d8 |
|
MD5 | f00f095c610bd20b0ff39f88632b9fba |
|
BLAKE2b-256 | a40ea7d6b73901cf7b01839a5fa405f30f810e3a52b0647f4d67ca6ca90f56e6 |