YP-Classifier - a pipeline to perform RandomForest+Bootstrapping, PERMANOVA and Mantel tests for assessing statistical significance of clade separation in 0/1 matrices
Description
🔬 Purpose:
Select statistically significant polymorphic sites (features) using chi-square
testing and FDR correction. Assess group separability using one of the following:
• RF – Random Forest bootstrap classification (default)
• PERMANOVA – Permutational Multivariate Analysis of Variance
• MANTEL – Mantel test for distance matrix correlation
⚙️ Dependencies:
┌───────────────────┬───────────────────────┐
│ Tool │ Minimum Version │
├───────────────────┼───────────────────────┤
│ Python │ 3.12.3 │
│ sklearn │ 1.7.0 │
│ statsmodels │ 0.14.5 │
│ matplotlib │ 3.10.1 │
│ scipy │ 1.15.2 │
│ pandas │ 2.2.3 │
│ numpy │ 2.2.3 │
│ scikit-bio │ latest │
└───────────────────┴───────────────────────┘
🚀 Usage:
python3 run.py input.csv [options]
The input file should be a CSV matrix of binary (1/0) data with column headers.
• The first column must contain sample names.
• The second column must contain group labels (at least two unique groups).
• Empty rows or rows without valid group labels will be ignored.
Example:
Strain, Group, locus_1, locus_2, locus_3, ...
S1, N, 0, 0, 1, ...
S2, N, 1, 0, 1, ...
S3, P, 1, 1, 0, ...
S4, 0, 1, 0, ...
🔧 Options:
--p_value, -p • Filter by maximum p-value (e.g. 0.05)
--significance, -s • Show only FDR-significant results (TRUE/FALSE)
--bootstrap, -b • Run bootstrap classification test (T/F), default: T
--algorithm, -a • Algorithm to assess group separation:
RF (default), PERMANOVA, MANTEL
🆘 Help Options:
-h, --help • Show this help message
-v, --version • Show version information
Files
Files
(1.3 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:7a0a0fff14ea06dfc607e2db8e744d8a
|
1.3 MB | Download |
Additional details
Software
- Programming language
- Python , Python console