Ricopili QC pipeline in PLINK2

127 views
Skip to first unread message

kyle campbell

unread,
Aug 28, 2020, 10:13:41 PM8/28/20
to plink2-users
Hello Christopher,

I'd like to use the Ricopili QC pipeline in my GWAS using PLINK2. The pipeline is as follows (in brackets are the flags I'm familiar with, and if not, a star):

Sample QC: call rate in cases or controls ≥ 0.98 [ --mind 0.02 ]

Sample QC: FHET within +/- 0.20 in cases or controls [ * ]

Sample QC: Sex violations (excluded) - genetic sex does not match pedigree sex [ ** ]

SNP QC: call rate ≥ 0.98 [ --geno 0.02 ]

SNP QC: missing difference ≤ 0.02 [ *** ]

SNP QC: Hardy-Weinberg equilibrium (HWE) in controls p value ≥ 1e-06 (i.e., ≥ log 10(p) of -6) [ **** ]

SNP QC: Hardy-Weinberg equilibrium (HWE) in cases p value ≥ 1e-10 (i.e., ≥ log 10(p) of -10) [ ***** ]

(HWE step should be done only in females when applying to chromosome X. See “Sex chromosomes”)

So the flags so far would be --mind 0.02  and --geno 0.02. How do I do the rest of these?

Missing difference would be defined as the absolute value of the difference between the missing rates between cases and controls.

Thanks,
Kyle.

kyle campbell

unread,
Aug 29, 2020, 12:07:15 AM8/29/20
to plink2-users
I could just do --het for *, --check-sex on the X chromosome (after the rest of the QC), --hwe for **** and ***** and then filter the results in R, but it seems that --test-missing is not available on PLINK2 which would be necessary for *** (which I need to use, since I'm working with .pgen+.psam+.pvar files in this particular case). However, if there is a way to perform the QC before the association analysis instead of filtering post-analysis for het/check-sex/hwe, that would of course be ideal.

Christopher Chang

unread,
Aug 29, 2020, 1:48:24 PM8/29/20
to plink2-users
--test-missing doesn't do what you want for ***.  Instead, you'd run a short script on the output of --missing, which PLINK2 does support.
Reply all
Reply to author
Forward
0 new messages