Skip to main content

Convenient and powerfull Polygenic Risk Score creation.

Project description

prstools

prstools is software to create Polygenic Risk Scores (PRS) directly from the commandline
(and optionally from inside python).

It contains various tools to make PRS generation easier. Installation and running the demo example should not take more than 10 minutes.

We are actively developing prstools and feedback by mail or our feedback form (with 🏆 lottery) is much appreciated!

Install

To install use the following command.

pip install -U prstools

For it to work, you should have python3.8 or later installed (pip is included in python3.8+). If the command above does not work directly you can install installed using conda (or mamba if you have that), by running conda install "python>=3.9" For other install issues please check the (install guide is still pretty basic) install guide or send us a mail.

How to use

Next to this very brief discription of what prstools can do, there is also more complete Getting Started Tutorial. Immediately after installing prstools, it should be possible to download & run the demo example (~4mb), by pasting the following into the commandline (if not see guide):

# Makes 'example' dir with data in current path:
prstools downloadutil --pattern example --destdir ./; cd example

# Run the model with example data:
prstools prscs2 --ref ldref_1kg_pop --target target \
                --sst sumstats.tsv --n_gwas 2565 --out --pred ./result 

This will run PRS-CS2 on the example data, using the new implementation to demonstrate the capabilities of prstools and makes PRS predictions for the example dataset.


More generally you can use prstools by typing into the command-line interface:

prstools
Usage:
 prstools <command> ...

Convenient and powerfull Polygenic Risk Score creation. 
'prst' is a commandline shorthand for 'prstools'

Models & Utility Commands:
 <command>
  downloadutil  Download and unpack LD reference panels and other data.
  combine       A tool to combine genetics-related text files.
  prscs2        PRS-CS v2: A polygenic prediction method that infers posterior SNP effect sizes
                under continuous shrinkage (CS) priors.


By combining prstools with another <command> a specific model or other functionality can be used.
Forinstance typing prstools prscs2 will output a help for the prscs2 subcommand:

Usage:
 prstools prscs2 [-h  --cpus <number-of-cpus>] --ref <dir/refcode> --target <bim-prefix>
                       --sst <file> --out <dir+prefix> [--n_gwas <num>  --chrom <chroms>]
                       [--colmap <alternative_colnames>  --pred  --n_iter <n_iter>]
                       [--n_burnin <n_burnin>  --n_slice <n_slice>  --seed <seed>  --a <a>]
                       [--b <b>  --phi <phi>  --clip <clip>  --sampler <sampler>]

PRS-CS v2: A polygenic prediction method that infers posterior SNP effect sizes under continuous shrinkage (CS) priors.

General Options:
 -h, --help                               Show this help message and exit.
 -c, --cpus <number-of-cpus>              The number of cpus to use. Generally most efficient if
                                          chosen to be between 1 and 5. Functionality can be

... [omitted for readability] ...


 --clip <clip>                            Clip parameter. The default works best in pretty much
                                          all cases. (default: 1.0)
 --sampler <sampler>                      Sampler algorithm. Rue sampling is the original sampler,
                                          which gives good results. (default: Rue)

Examples --> can be directly copy-pasted (:
 prst downloadutil --pattern example --destdir ./; cd example                                                # Makes 'example' dir in current path.
 prstools prscs2 --ref ldref_1kg_pop --target target --sst sumstats.tsv --n_gwas 2565 --out ./result-prscs2 # Run the model with example data.
 prst prscs2 -r ldref_1kg_pop -t target -s sumstats.tsv -n 2565 -o ./result-prscs2 --pred                  # A shorter version of previous that also does the predictions.

As can be seen, there are examples at the end of the help output to illustrate usage, which should work with a simple copy-paste.

Tutorial

For more information and a hands on demonstration of what prstools can do have a look at the Getting Started Tutorial. Or load that same tutorial in a free cloud instance by clicking here: Binder

Contact

For questions and support please send a mail (menno.j.witteveen@gmail.com).

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

prstools-0.0.50.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prstools-0.0.50-py3-none-any.whl (2.0 MB view details)

Uploaded Python 3

File details

Details for the file prstools-0.0.50.tar.gz.

File metadata

  • Download URL: prstools-0.0.50.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for prstools-0.0.50.tar.gz
Algorithm Hash digest
SHA256 4362b676c613a0213ab7948720668df7c9a8c071521e228e61b34f2629aa4b06
MD5 a2dbc9243c186c0df3d506b2b95bdf04
BLAKE2b-256 47492ea47903baadfc845c7a8e2a54e61d8ca3ee4655acc9b9c2e1a27acabb60

See more details on using hashes here.

File details

Details for the file prstools-0.0.50-py3-none-any.whl.

File metadata

  • Download URL: prstools-0.0.50-py3-none-any.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for prstools-0.0.50-py3-none-any.whl
Algorithm Hash digest
SHA256 9985ded5784e9e7583ea3c89f8defbd4cfa0fbf4e0af1c46848e2a86bca38a86
MD5 6d830c65d27b499c18b0e29f469a6401
BLAKE2b-256 40e5ee0a565c1f955264f04631cd85d98cf61ce40a0f9401ebc98c5ff50ffd2d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page