This question was also asked on Biostars

I'm trying to understand what is the best algorithm for GWAS nowadays. I know we have many tools available like Plink and Hail, but currently, what is the best algorithm if I won't use any them? Let's say, write down a script in R or Python from scratch. Which statistical algorithm should I use? Is it Linear mixed models (LMMs)? I'm confused as we can have binary phenotypes (case/control) or quantitative phenotypes. LMM seems to address quantitative ones, but can it be used for case/control as well? Actually, what is the state of the art for both/each of them? Pair-reviewed papers as references will be appreciated. Thanks!

  • $\begingroup$ To clarify: you're asking what the best algorithm is, assuming you don't want to use the well-tested and validated algorithms that other people are using? $\endgroup$
    – gringer
    Dec 2, 2019 at 0:36
  • $\begingroup$ It can be whatever anyone is using. I just want to know what is the algorithm behind the scene for binary or quantitative phenotypes. $\endgroup$ Dec 3, 2019 at 13:29
  • 1
    $\begingroup$ This is not a good fit for a Bioinformatics Stack Exchange question, as the question is too broad and primarily opinion-based. I'd recommend that you ask something like this on [reddit](reddit.com/r/bioinformatics). The best questions on BSE deal with specific problems that people are having. If you think your question is specific, please edit it to make that more obvious. $\endgroup$
    – gringer
    Dec 3, 2019 at 18:48
  • 1
    $\begingroup$ Sorry, but I disagree. I'm not looking for opinions, but the algorithm that, mathematically, (through statistical tests) prooves to be the state-of-the-art. I've got the answer, check it out below. Thanks anyway! $\endgroup$ Dec 7, 2019 at 14:45

1 Answer 1


I've got the answer to my question at https://www.biostars.org/p/410466/ by chrchang522

"The main regression executed by Plink was introduced by EIGENSTRAT in ~2006; see https://www.nature.com/articles/ng1847 . This is actually straightforward to write in R/Python from scratch; the harder part is optimizing the implementation for large datasets.

The Firth regression added to Plink 2.0 to improve handling of rare variants and imbalanced binary phenotypes was motivated by https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4049324/ .

Mixed linear models provide better statistical power when you have lots of close relatives in your dataset, but are much trickier to solve; actually, this is still a significant research area. Two tools covering parts of the current state-of-the-art are SAIGE (https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6119127/ ; handles imbalanced binary phenotypes, but relatively slow) and fastGWA (https://www.nature.com/articles/s41588-019-0530-8 ; great speed, but doesn't support dosage data yet and uses a misspecified model for binary phenotypes)."


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.