Project · Contribution

Contribution

A documented, reusable contribution for future iGEM teams.

In plain language

A complete, reproducible microbiome reanalysis, documented step by step, together with the two mistakes we made along the way so that the next team does not have to make them.

What a contribution has to be

Make a useful, documented contribution for future teams: a part, protocol, dataset, tool, or well-documented method. Ours is a well-documented method, in three parts.
For future teams

What we contributed


Reanalysing a published microbiome dataset is a common iGEM dry-lab project and an unusually easy one to get quietly wrong. We did it end to end on the MDCF-2 trial data and wrote down everything a team would need to repeat it, including the parts where we were wrong first.

  1. A reproducible V4 16S pipeline for ENA accession PRJEB38494, pinned to a single software version, with every command as run and the expected output at each step.
  2. The direction trap: a differential-abundance tool’s coefficient sign is not a reliable guide to which group a taxon is higher in. We read one backwards and had to correct it.
  3. The pseudoreplication lesson: a differential-abundance hit is not trustworthy until it survives a model with a per-subject random effect. This one changed our own headline result.
Documented method

A pipeline another team can rerun


The full command sequence, from raw reads to differential abundance, is on the Measurement page with the expected numbers at each stage, so a team can check their run against ours rather than guess whether it worked. Three things are worth copying regardless of the dataset:

  • Pin the version. Everyone on our team ran QIIME 2 2026.1. Mixed versions produce results that differ slightly and waste days of reconciliation.
  • Run core-metrics once. One rarefied run feeds alpha diversity, beta diversity and PERMANOVA. Rerunning it per analysis silently changes the sample set between figures.
  • Check your taxonomic resolution before reporting it. We collapsed to species level specifically to see whether it was usable: 0 of 307 taxa resolved to a real species name, so we report genus and ASV only. V4 16S cannot call species, and assuming it can is a claim a judge will test.
Check species resolution before you trust itQIIME 2
qiime taxa collapse --i-table table-final.qza \
  --i-taxonomy taxonomy.qza --p-level 7 \
  --o-collapsed-table table-species.qza
# then inspect the feature names: ours resolved 0 of 307 to a species
A mistake we made

The direction trap


Never read direction off a coefficient sign

MaAsLin2 and ANCOM-BC2 report a coefficient whose sign appears to say which group a taxon is higher in. It is not a reliable indicator. We trusted it once, reported Bifidobacterium as higher under MDCF-2, and had it backwards. Always confirm direction against the raw mean relative abundance per group.

The fix costs one extra step and removes the whole class of error: collapse the feature table to genus, compute the mean relative abundance per group, and read direction from those numbers. We built that table for every genus in our dataset and verified all four of our significant taxa against it.

The four significant taxa, with direction established from raw mean relative abundance per arm
TaxonMean under MDCF-2Mean under RUSFHigher in
Bifidobacterium17.74%20.58%RUSF
Cetobacterium0.60%0.23%MDCF-2
Acidaminococcus0.08%0.11%RUSF
Eggerthella0.006%0.010%RUSF

This is also what turned the Bifidobacterium result into our strongest point of reproduction rather than a contradiction. Read the right way round, it is lower under MDCF-2, which is what the original paper reported. Read the wrong way round, we would have published a claim that disagreed with the paper for no reason other than our own error.

Transferable

The methods lesson that generalises


Our most useful finding is not about bacteria. Standard differential-abundance tools treat every sample as an independent observation. In any study with repeated sampling, and that includes most longitudinal microbiome designs, they are not: our 939 samples came from 118 children. Treating them as independent makes a test over-confident, so it calls small differences significant.

When we refitted with a per-child random intercept, our apparently significant Prevotella result degraded to non-significant. The direction survived; the confidence did not. The full argument, with the four-model ladder and the power simulation that checks whether the corrected null is believable, is on the Model page.

The one line to take away

A differential-abundance hit is not trustworthy until it survives a model that accounts for having several samples per subject. Test it before you report it, and report the result even when it weakens your finding.
Reusable

How to use it


Start at Measurement for the pipeline and the expected numbers, read Model for the modelling argument, and take Software for the power simulation, which is written to be retargeted at another design by editing the constants at the top of the file.

Content pending

Add any further contribution the team makes, such as a Registry part or a wet-lab protocol

  • What it is and who it helps
  • Where it lives (Registry entry, repository, or protocol page)
  • What a future team needs in order to reuse it