Welcome to PriorityPruner


PriorityPruner is a software program which can prune a list of SNPs that are in high linkage disequilibrium (LD) with other SNPs in the list, while preferentially keeping/selecting SNPs of higher priority (e.g., the most significant SNPs in a genome-wide association study).


  1. A genotype dataset (e.g., PLINK format)
  2. A table of SNPs annotated with p-values or other prioritization criteria
  1. A table of SNPs with columns indicating if the SNP is selected and/or tagged by a selected SNP

PriorityPruner iterates over the entire list of inputted SNPs, in order of decending priority (e.g., lowest to highest p-value), to select LD-independent SNPs according to user-defined thesholds.

The software allows users to customize the pruning in several ways:

  • Define multiple r2 thresholds based on p-value
  • Select variable number of surrogate SNPs based on p-value
  • Weight surrogate SNP selection by multiple custom columns in the SNP Input Table
  • Force-select a set of SNPs
  • Filter SNPs by MAF, call rate, and design score
  • Filter defined or random samples to reduce LD calculation burden

PriorityPruner consists of a Java JAR file and can be run using the command line in Windows, Mac, Linux, or any other platform that supports Java.


Documentation and usage examples can be found on the documentation page.


To obtain PriorityPruner, please visit the downloads page.


PriorityPruner was developed by the following authors at the University of Southern California:

Citing PriorityPruner

We are currenlty working on a manuscript which we hope to publish soon. In the meantime, we would appreciate if you cite the version of PriorityPruner you used and this website.


PriorityPruner is released under the MIT License.