Skip to main content

A serverless interface to Biopython to access different versions of JASPAR database

Project description

pyJASPAR

A Pythonic interface to JASPAR transcription factor motifs

pyJASPAR uses Biopython and SQLite3 to provide a serverless interface to JASPAR database to query and access TF motif profiles across various releases of JASPAR.

https://zenodo.org/badge/DOI/10.5281/zenodo.4509415.svg https://travis-ci.org/asntech/pyjaspar.svg?branch=main https://img.shields.io/pypi/pyversions/pyjaspar.svg https://img.shields.io/pypi/v/pyjaspar.svg https://anaconda.org/bioconda/pyjaspar/badges/version.svg https://anaconda.org/bioconda/pyjaspar/badges/downloads.svg https://img.shields.io/github/issues/asntech/pyjaspar.svg

pyJASPAR provides access to the following releases of JASPAR database: JASPAR2024, JASPAR2022, JASPAR2020, JASPAR2018, JASPAR2016, JASPAR2014.

Note: This is a serverless SQLite wrapper around the Biopython JASPAR module Bio.motifs.jaspar.db which requires JASPAR MySQL database sever connection details.

Documentation

A detailed documentation is available in different formats: HTML | PDF | ePUB

Installation

Quick installation using conda

pyJASPAR is available on Bioconda for installation via conda.

conda install -c bioconda pyjaspar

Install using pip

pyJASPAR is also available on PyPi for installation via pip.

pip install pyjaspar

pyJASPAR uses BioPython and it supports python 3.x.

Install pyjaspar from source

You can install a development version by using git from GitHub.

Install development version from GitHub

If you have git installed, use this:

git clone https://github.com/asntech/pyjaspar.git
cd pyjaspar
python setup.py sdist install

How to use pyJASPAR?

Once you have installed pyjaspar, you can create jaspardb class object:

>>> from pyjaspar import jaspardb

#Create the JASPAR2022 release object
>>> jdb_obj = jaspardb(release='JASPAR2024')

#Fetch motif by ID
>>> motif = jdb_obj.fetch_motif_by_id('MA0095.2')
>>> print(motif.name)
YY1

#Fetch motifs by TF name
>>> motifs = jdb_obj.fetch_motifs_by_name('KFL4')
>>> print(len(motifs))
1

# Get a dictionary of frequency count matrics
>>> print(motifs[0].counts)
{'A': [2465.0, 2105.0, 7021.0, 1173.0, 45602.0, 852.0, 1617.0, 1202.0],
'C': [49209.0, 47865.0, 45405.0, 52875.0, 161.0, 52366.0, 51112.0, 51045.0],
'G': [1583.0, 1214.0, 1422.0, 793.0, 6598.0, 1470.0, 1870.0, 1005.0],
'T': [2560.0, 4633.0, 1969.0, 976.0, 3456.0, 1129.0, 1218.0, 2565.0]}

#Get CORE vertebrates non-redundent collection
>>> motifs = jdb_obj.fetch_motifs(
        collection = ['CORE'],
        tax_group = ['Vertebrates'],
        all_versions = False)
>>> print(len(motifs))
879
## loop through the motifs list and perform analysis
>>> for motif in motifs:
        pass

Note: Above methods return Bio.motifs.jaspar.Motif object. You can find more details here

Find available releases

>>> print(jdb_obj.get_releases())
['JASPAR2024','JASPAR2022','JASPAR2020', 'JASPAR2018', 'JASPAR2016', 'JASPAR2014']

Cite

  • Aziz Khan. pyJASPAR: a Pythonic interface to JASPAR transcription factor motifs. (2021). doi:10.5281/zenodo.4509415

@software{aziz_khan_2021_4509415,
  author       = {Aziz Khan},
  title        = {{pyJASPAR: a Pythonic interface to JASPAR transcription factor motifs}},
  month        = feb,
  year         = 2021,
  publisher    = {Zenodo},
  version      = {v2.0.0},
  doi          = {10.5281/zenodo.4509415},
  url          = {https://doi.org/10.5281/zenodo.4509415}
}

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

pyjaspar-3.0.0.tar.gz (51.0 MB view details)

Uploaded Source

File details

Details for the file pyjaspar-3.0.0.tar.gz.

File metadata

  • Download URL: pyjaspar-3.0.0.tar.gz
  • Upload date:
  • Size: 51.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.6.0.post20210108 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.6

File hashes

Hashes for pyjaspar-3.0.0.tar.gz
Algorithm Hash digest
SHA256 b939770e5d9e0fb26137e404a640e8aeb866c84b570e59c42d056f61f561146d
MD5 4cde828cd3dd874513d6f83825bb2be7
BLAKE2b-256 97b26967f9289d0522dd7e6a86c0d5a0f2aaa20c01187c555bdfc96ae70a9ba9

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