waldronlab / waldronlab/agent-protocols
Protocol: ANOSIM on a community distance matrix
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 0
- Forks
- 1
- Avg merge
- 1h 2m
- Merged PRs (30d)
- 9
Description
Tier: D (cMD paper) · Type: atomic · Category: Statistical Analysis
What
Test whether between-group community dissimilarities exceed within-group dissimilarities, using the rank-based analysis of similarities statistic R, assessed by permutation.
Why it matters
Split from PERMANOVA for the citation reason, but they are worth distinguishing on the substance too. ANOSIM works on ranks of dissimilarities, so its R statistic is a measure of separation bounded in [−1, 1] and is interpretable as an effect size in a way a pseudo-F is not. It is also more sensitive to within-group dispersion differences than PERMANOVA — which makes the companion dispersion check more important here, not less.
Having both protocols lets an analysis run them side by side and say so, which is what the cMD paper did.
Source material
- Clarke (1993), Australian Journal of Ecology — "Non-parametric multivariate analyses of changes in community structure". VERIFY the DOI before merging
- Applied in: 10.1038/s41467-025-66888-1 — alongside PERMANOVA, 999 permutations
Scope
In: the required input (a distance matrix plus grouping); the rank transformation and the R statistic; the permutation scheme and 999 as a default; interpretation of R magnitude, separately from its p-value, since with large n a trivially small R is significant; the dispersion sensitivity and the required companion check; what to report when ANOSIM and PERMANOVA disagree.
Out: computing distances; PERMANOVA; ordination.
Frontmatter starting point
type: "atomic"
category: "Statistical Analysis"
citation: "" # Clarke 1993 — candidate 10.1111/j.1442-9993.1993.tb00438.x. VERIFY.
tags: [anosim, beta-diversity, permutation, ranks, distance-matrix]
Acceptance criteria
- Takes the same distance-matrix input as the PERMANOVA protocol, so both can be run on one matrix
- R is interpreted as an effect size separately from its p-value
- States the dispersion sensitivity and requires the companion check
- Says what a disagreement with PERMANOVA indicates
Cite the method's origin, not its users
PROTOCOL_STANDARD.md is explicit: an atomic protocol carries "strictly 1 citation... corresponding
to the primary literature where the method was originally published." Find the paper that proposed
the method. Do not cite a paper that merely applied it — including the BugSigDB and curatedMetagenomicData
papers, which are the source of the analysis these protocols were extracted from but almost never the
source of the method.
Tracing a method back to its first publication is real work, and it is part of the task, not a
formality. Three things to expect:
- Candidate DOIs in this issue are leads, not answers. Anything marked VERIFY has not been checked.
- Some methods predate modern citation practice or have no single identifiable origin. If that is
genuinely the case, say so in the pull request rather than reaching for a convenient recent paper.
Raise it as an issue inwaldronlab/agent-protocol-standard— the standard may need a way to express
"classical method, no primary source". - If you cannot name one paper that proposed everything the protocol does, it is more than one
protocol. That test has now split four protocols out of this batch: enrichment into three methods,
filtering from transformation, LODO from random forest, and PERMANOVA from ANOSIM.
Where the lab's own paper genuinely did propose the method — the oral-to-gut score, and LODO
cross-validation in Pasolli et al. 2016 — citing it is correct. That is the exception, not the pattern.
Before you start
Read CONTRIBUTING.md and
PROTOCOL_STANDARD.md.
The format is defined in the standard repo, not this one. Protocols are prose, not code: they say what to do
and why, precisely enough that two people — or two agents, in two languages — get the same answer. The existing
independent-filtering-variance
protocol is the model to imitate for tone and level of detail.
Validate locally before opening the PR:
git clone https://github.com/waldronlab/agent-protocol-standard.git
Rscript agent-protocol-standard/scripts/validate-protocol.R protocols
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read CONTRIBUTING.md, PROTOCOL_STANDARD.md, and the independent-filtering-variance protocol for format and tone. Verify the primary ANOSIM citation, write the protocol covering the shared distance-matrix input, R statistic, permutations, dispersion check, and interpretation of disagreements with PERMANOVA, then run the specified Rscript validator; done means all acceptance criteria pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- markdown, yaml
- Domain
- data, documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 74/100