pgsc_calc
is a bioinformatics best-practice analysis pipeline for calculating
polygenic [risk] scores on samples with imputed genotypes using existing scoring
files from the Polygenic Score (PGS) Catalog
and/or user-defined PGS/PRS.
Important
- Whole genome sequencing (WGS) data are not currently supported by the calculator
- It’s possible to create compatible gVCFs from WGS data. We plan to improve support for WGS data in the near future.
The workflow performs the following steps:
- Downloading scoring files using the PGS Catalog API in a specified genome build (GRCh37 and GRCh38).
- Reading custom scoring files (and performing a liftover if genotyping data is in a different build).
- Automatically combines and creates scoring files for efficient parallel computation of multiple PGS
- Matching variants in the scoring files against variants in the target dataset (in plink bfile/pfile or VCF format)
- Calculates PGS for all samples (linear sum of weights and dosages)
- Creates a summary report to visualize score distributions and pipeline metadata (variant matching QC)
And optionally:
- Genetic Ancestry: calculate similarity of target samples to populations in a reference dataset (1000 Genomes (1000G)), using principal components analysis (PCA)
- PGS Normalization: Using reference population data and/or PCA projections to report individual-level PGS predictions (e.g. percentiles, z-scores) that account for genetic ancestry
See documentation for a list of planned features under development.
pgsc_calc
uses applications and libraries internally developed at the PGS Catalog, which can do helpful things like:
- Query the PGS Catalog to bulk download scoring files in a specific genome build
- Match variants from scoring files to target variants
- Adjust calculated PGS in the context of genetic ancestry
If you want to write Python code to work with PGS, check out the pygscatalog
repository to learn more.
If you want a simpler way of working with PGS, ignore this section and continue below to learn more about pgsc_calc
.
-
Install
Nextflow
(>=23.10.0
) -
Install
Docker
orSingularity (v3.8.3 minimum)
(please only useConda
as a last resort) -
Download the pipeline and test it on a minimal dataset with a single command:
nextflow run pgscatalog/pgsc_calc -profile test,<docker/singularity/conda>
-
Start running your own analysis!
nextflow run pgscatalog/pgsc_calc -profile <docker/singularity/conda> --input samplesheet.csv --pgs_id PGS001229
See getting started for more details.
Full documentation is available on Read the Docs
pgscatalog/pgsc_calc is developed as part of the PGS Catalog project, a collaboration between the University of Cambridge’s Department of Public Health and Primary Care (Michael Inouye, Samuel Lambert) and the European Bioinformatics Institute (Helen Parkinson, Laura Harris).
The pipeline seeks to provide a standardized workflow for PGS calculation and ancestry inference implemented in nextflow derived from an existing set of tools/scripts developed by Inouye lab (Rodrigo Canovas, Scott Ritchie, Jingqin Wu) and PGS Catalog teams (Samuel Lambert, Laurent Gil).
The adaptation of the codebase, nextflow implementation, and PGS Catalog features are written by Benjamin Wingfield, Samuel Lambert, Laurent Gil with additional input from Aoife McMahon (EBI). Development of new features, testing, and code review is ongoing including Inouye lab members (Rodrigo Canovas, Scott Ritchie) and others. If you use the tool we ask you to cite our paper describing software and updated PGS Catalog resource:
-
Lambert, Wingfield et al. (2024) Enhancing the Polygenic Score Catalog with tools for score calculation and ancestry normalization. Nature Genetics. doi:10.1038/s41588-024-01937-x.
This pipeline is distrubuted under an Apache License amd uses code and infrastructure developed and maintained by the nf-core community (Ewels et al. Nature Biotech (2020) doi:10.1038/s41587-020-0439-x), reused here under the MIT license.
Additional references of open-source tools and data used in this pipeline are described in
CITATIONS.md
.
This work has received funding from EMBL-EBI core funds, the Baker Institute, the University of Cambridge, Health Data Research UK (HDRUK), and the European Union’s Horizon 2020 research and innovation programme under grant agreement No 101016775 INTERVENE.