Skip to main content

A collection of handy tools for GWAS

Project description

gwaslab

A collection of handy python scripts for GWAS. This package is based on matplotlib and seaborn. Just want to save myself from repetitive work.

What you can do with gwaslab:

  1. Side-by-side Manhattan and QQ plot
  2. Manhattan plot
  3. QQ plot
  4. Calculate lamda GC
  5. [Select top SNPs based on a given window size.]
  6. Convert beta/se <-> OR/95%L_U/95%L_L
  7. Select hapmap3 SNPs from sumstats
  8. Convert Observed scale heritability to liability scale heritability

manhattan_qq_plot

Requirements:

  1. Python>3 2. "scipy" 3. "numpy" 4. "pandas" 5. "matplotlib" 6. "seaborn"

Install:

pip install gwaslab

Current version: 0.0.4

Usage:

Input: pandas dataframe

Create Manhattan plot and QQ plot with just one line

import gwaslab as gl

## creat qqplot and manhattan plot with just one line
## pass a dataframe in, and specify the column name for chromosome, base pair position, and also the p values.
gl.mqqplot(sumstats,"CHR","POS","PVALUE")

## adjust the plot, select top snps and add annotation sutomatically.
gl.mqqplot(sumstats,"CHR","POS","PVALUE",cut=20,cutfactor=10,anno=True,verbose=True,save=True,title="gwaslab")

## all options
gl.mqqplot(insumstats,
          chrom,
          pos,
          p,
          scaled=False,
          cut=0,
          cutfactor=10,
          cut_line_color="#ebebeb",
          windowsizekb=500,
          anno=None,
          sig_level=5e-8,
          sig_line_color="grey",
          suggestive_sig_level=5e-6,
          title =None,
          mtitle=None,
          qtitle=None,
          figsize =(15,5),
          fontsize = 10,
          colors = ["#000042", "#7878BA"],
          verbose=True,
          repel_force=0.03,
          gc=True,
          save=None,
          saveargs={"dpi":300,"facecolor":"white"}
          )

Or you can plot it separately.

Manhattan plot

gl.mplot()

QQ plot

gl.qqplot()

Calculate genomic inflation factor

gc(insumstats{"PVALUE"},mode="p",level=0.5)
gc(insumstats["Z"],mode="z",level=0.5)
gc(insumstats["chi2"],mode="chi2",level=0.5)

Extract top snps given a sliding window size

gl.getsig(insumstats,id,chrom,pos,p)

gl.getsig(insumstats,id,chrom,pos,p,windowsizekb=500,verbose=True,sig_level=5e-8)

Converting observed scale heritability to liability scale heritability

gl.h2_obs_to_liab(h2_obs, P, K)

gl.h2_obs_to_liab(h2_obs, P, K, se_obs=None)

Ref:


Log

  • 0.0.4
    • added mqqplot feature
    • fixed gtesig algorithm
    • recreated mplot and qqplot

Next

  • beta to OR
  • OR to beta

For more information: https://gwaslab.com/

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

gwaslab-0.0.6.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

gwaslab-0.0.6-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file gwaslab-0.0.6.tar.gz.

File metadata

  • Download URL: gwaslab-0.0.6.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.2.1 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for gwaslab-0.0.6.tar.gz
Algorithm Hash digest
SHA256 a27ed71306fe8a66fef682a1141413677b1d53da825f78adf2fc9fde3d644fa2
MD5 b43340ae5e6529a9163903323380a331
BLAKE2b-256 6520492b7b1a5baa1e4a04d619b9d2c18a630adad86ce8d4ae5dc76b961b95d5

See more details on using hashes here.

File details

Details for the file gwaslab-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: gwaslab-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.2.1 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for gwaslab-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8599647b551396aedb03236d9419d503fa709454a369e9411729095e1f978a8a
MD5 1870edb16cc7f567774c6713353857fa
BLAKE2b-256 d7d4586df87e8643b031ce19e14526506c0ca357f3a31ffdd7a3142f8d5935a7

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