Skip to main content

Utitilies for constructing and manipulating models for non-local structural dependencies in genomic sequences

Project description

Quasinet

quasinet PyPI Downloads

PyPI version

Description

Infer non-local structural dependencies in genomic sequences. Genomic sequences are esentially compressed encodings of phenotypic information. This package provides a novel set of tools to extract long-range structural dependencies in genotypic data that define the phenotypic outcomes. The key capabilities implemented here are as follows:

  1. Compute the Quasinet (Q-net) given a database of nucleic acid sequences. The Q-net is a family of conditional inference trees that capture the predictability of each nucleotide position given the rest of the genome. The constructed Q-net for COVID-19 and Influenza A H1N1 HA 2008-9 is shown below.
COVID-19 INFLUENZA
  1. Compute a structure-aware evolution-adaptive notion of distance between genomes, which is demonstrably more biologically relevant compared to the standard edit distance.

  2. Draw samples in-silico that have a high probability of being biologically correct. For example, given a database of Influenza sequences, we can generate a new genomic sequence that has a high probability of being a valid influenza sequence.

Installation

To install with pip:

pip install quasinet

To fix error with Mac or Windows:

from quasinet.osfix import osfix
# for windows
osfix('win')
# for max x86_64 (macbook pro)
osfix('macx86')
# mac arm (macbook air)
osfix('macarm')

NOTE: If trying to reproduce the paper below, please use pip install quasinet==0.0.58

Dependencies

  • scikit-learn
  • scipy
  • numpy
  • numba
  • pandas
  • joblib
  • biopython

Usage

from quasinet import qnet

# initialize qnet
myqnet = qnet.Qnet()

# train the qnet
myqnet.fit(X)

# compute qdistance
qdist = qnet.qdistance(seq1, seq2, myqnet, myqnet) 

Examples

Examples are located here.

Documentation

For more documentation, see here.

Papers

For reference, please check out our paper:

Preparing For the Next Pandemic: Learning Wild Mutational Patterns At Scale For Analyzing Sequence Divergence In Novel Pathogens

Authors

You can reach the ZED lab at: zed.uchicago.edu

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

quasinet-0.1.23.tar.gz (14.5 MB view details)

Uploaded Source

Built Distribution

quasinet-0.1.23-py3-none-any.whl (15.2 MB view details)

Uploaded Python 3

File details

Details for the file quasinet-0.1.23.tar.gz.

File metadata

  • Download URL: quasinet-0.1.23.tar.gz
  • Upload date:
  • Size: 14.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.10.8

File hashes

Hashes for quasinet-0.1.23.tar.gz
Algorithm Hash digest
SHA256 00698ca12012b1d263e3f54b4bb77f830ab620465ac9f3d5c64e1466dd73de77
MD5 922379c52e45888652bfefbecaae8a48
BLAKE2b-256 2dc5009096467985c25d1bb1249eae06faf5fcf752594490db3f15ae9b45f84c

See more details on using hashes here.

File details

Details for the file quasinet-0.1.23-py3-none-any.whl.

File metadata

  • Download URL: quasinet-0.1.23-py3-none-any.whl
  • Upload date:
  • Size: 15.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.64.1 CPython/3.10.8

File hashes

Hashes for quasinet-0.1.23-py3-none-any.whl
Algorithm Hash digest
SHA256 0b0839281e51b7b3485b85ba5594b5ab11c724fb264c54b07bbc1858aff97c77
MD5 3e7a3533e434e896d89573189c9b8c6e
BLAKE2b-256 e7bfeb1d3bf1b84ddd019cfe5dc6d7d19f23ef543887b6c2d9a0985194a9341b

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