A Python API for managing genotype-phenotype map data
GPMap defines a flexible object for managing genotype-phenotype (GP) map data. At it's core, it stores all data in Pandas DataFrames and thus, interacts seamlessly with the PyData ecosystem.
To visualize genotype-phenotype objects created by GPMap, checkout GPGraph.
Import the package's base object.
from gpmap import GenotypePhenotypeMap
Pass your data to the object.
# Data
wildtype = "AAA"
genotypes = ["AAA", "AAT", "ATA", "TAA", "ATT", "TAT", "TTA", "TTT"]
phenotypes = [0.1, 0.2, 0.2, 0.6, 0.4, 0.6, 1.0, 1.1]
stdeviations = [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05]
# Initialize the object
gpm = GenotypePhenotypeMap(wildtype,
genotypes,
phenotypes,
stdeviations=stdeviations)
# Check out the data.
gpm.data
Or load a dataset from disk.
gpm = GenotypePhenotypeMap.read_json("data.json")
Users This simplest way to install this package is using pip:
pip install gpmap
Developers
The recommended way to install this package for development is using pipenv
.
- Clone this repository:
git clone https://github.com/harmslab/gpmap
- Install the package using pipenv.
cd gpmap
pipenv install --dev -e .
- Run tests using pytest
pytest
The following modules are required. Also, the examples/tutorials are written in Jupyter notebooks and require IPython to be installed.