A phenotype-aware algorithm for resolving cryptic relatedness in genetic studies. It removes related individuals based on kinship or identity-by-descent (IBD) scores while prioritizing subjects with phenotypes of interest. This approach helps maximize the retention of informative subjects, particularly for rare or valuable traits, and improves statistical power in genetic and epidemiological studies. KDPS supports both categorical and quantitative phenotypes, composite scoring, and customizable pruning strategies using a fuzziness parameter. Benchmark results show improved phenotype retention and high computational efficiency on large-scale datasets like the UK Biobank. Methods used include Manichaikul et al. (2010)

KDPS (Kinship Decouple and Phenotype Selection) is an R package designed to resolve cryptic relatedness in genetic studies using a phenotype-aware approach. It retains subjects with relevant traits while pruning related individuals based on kinship or identity-by-descent (IBD) scores.
fuzziness parameterYou can install the development version of KDPS from GitHub with:
# install.packages("devtools")
devtools::install_github("UCSD-Salem-Lab/kdps")
You can view the tutorial of the KDPS function with:
vignette("kdps-intro", package = "kdps")
library(kdps)
phenotype_file = system.file("extdata", "simple_pheno.txt", package = "kdps")
kinship_file = system.file("extdata", "simple_kinship.txt", package = "kdps")
kdps_results = kdps(
phenotype_file = phenotype_file,
kinship_file = kinship_file,
fuzziness = 0,
phenotype_name = "pheno2",
prioritize_high = FALSE,
prioritize_low = FALSE,
phenotype_rank = c("DISEASED1", "DISEASED2", "HEALTHY"),
fid_name = "FID",
iid_name = "IID",
fid1_name = "FID1",
iid1_name = "IID1",
fid2_name = "FID2",
iid2_name = "IID2",
kinship_name = "KINSHIP",
kinship_threshold = 0.0442,
phenotypic_naive = FALSE
)
head(kdps_results)
?kdpsIf you use KDPS in your research, please cite:
Wanjun Gu, Jiachen Xi, Steven Cao, Rany M. Salem. Kinship Decouple and Phenotype Selection (KDPS). Manuscript in preparation
This package is released under the MIT License. See LICENSE file for
details.