Genetics to the rescue

27 05 2025

Procreating with a relative is taboo in most human societies for many reasons, but they all stem from avoiding one thing in particular — inbreeding increases the risk of genetic disorders that can seriously compromise a child’s health, life prospects, and survival.

While we all inherit potentially harmful mutations from our parents, the effects of these mutations are often partially or completed masked if we possess two alternative variants of a gene — one from each parent. However, the children of closely related parents are more likely to inherit the same copies of harmful mutations. This is known as ‘inbreeding depression’. 

But inbreeding depression can happen in any species, with the risk increasing as populations become smaller. Because many species are rapidly declining in abundance and becoming isolated from one another predominantly due to habitat destruction, invasive species, and climate change, the chances of inbreeding are also increasing.

Not only are such populations more susceptible to random disturbances, they are also victim of reduced population growth rates arising from inbreeding depression. This produces what is generally known as the ‘extinction vortex‘ — the smaller your population, the more you inbreed and produce sub-optimal offspring, leading to even more population decline and eventually extinction.

One emergency intervention that can ‘rescue’ such inbred populations from extinction (at least in the short term) is to introduce unrelated individuals from other populations in an attempt to increase genetic diversity, and therefore, the rate of population growth. While somewhat controversial because some fear introducing diseases or eroding local-area specialisation (so-called ‘outbreeding depression’), the risk-benefit ratio of this ‘genetic rescue’ is now widely considered to be worth it

Read the rest of this entry »




Smart genetic analysis made fast and easy

29 07 2021

If you use genetics to differentiate populations, the new package smartsnp might be your new friend. Written in R language and available from GitHub and CRAN, this package does principal component analysis with control for genetic drift, projects ancient samples onto modern genetic space, and tests for population differences in genotypes. The package has been built to load big datasets and run complex stats in the blink of an eye, and is fully described in a paper published in Methods in Ecology and Evolution (1).


In the bioinformatics era, sequencing a genome has never been so straightforward. No surprise that > 20 petabytes of genomic data are expected to be generated every year by the end of this decade (2) — if 1 byte of information was 1 mm long, we could make 29,000 round trips to the moon with 20 petabytes. Data size in genetics keeps outpacing the computer power available to handle it at any given time (3). Many will be familiar with a computer freezing if unable to load or run an analysis on a huge dataset, and how many coffees or teas we might have drunk, or computer screens might have been broken, during the wait. The bottom line is that software advances that speed up data processing and genetic analysis are always good news.

With that idea in mind, I have just published a paper presenting the new R package smartsnp (1) to run multivariate analysis of big genotype data, with applications to studies of ancestry, evolution, forensics, lineages, and overall population genetics. I am proud to say that the development of the package has been one of the most gratifying short-term collaborations in my entire career, with my colleagues Christian Huber and Ray Tobler: a true team effort!

The package is available on GitHub and the Comprehensive R Archive Network CRAN. See downloading options here, and vignettes here with step-by-step instructions to run different functionalities of our package (summarised below).

In this blog, I use “genotype” meaning the combination of gene variants (alleles) across a predefined set of positions (loci) in the genome of a given individual of animal, human, microbe, or plant. One type of those variants is single nucleotide polymorphisms (SNP), a DNA locus at which two or more alternative nucleotides occur, sometimes conditioning protein translation or gene expression. SNPs are relatively stable over time and are routinely used to identify individuals and ancestors in humans and wildlife.

What the package does

The package smartsnp is partly based on the field-standard software EIGENSOFT (4, 5) which is only available for Unix command-line environments. In fact, our driving motivation was (i) to broaden the use of EIGENSOFT tools by making them available to the rocketing community of professionals, not only academics who employ R for their work (6), and (ii) to optimise our package to handle big datasets and complex stats efficiently. Our package mimics EIGENSOFT’s principal component analysis (SMARTPCA) (5), and also runs multivariate tests for population differences in genotypes as follows:

Read the rest of this entry »