MaAsLin2 is the next generation of MaAsLin (Microbiome Multivariable Association with Linear Models).
MaAsLin2 is comprehensive R package for efficiently determining multivariable association between clinical metadata and microbial meta-omics features. MaAsLin2 relies on general linear models to accommodate most modern epidemiological study designs, including cross-sectional and longitudinal, along with a variety of filtering, normalization, and transform methods.
If you use the MaAsLin2 software, please cite our manuscript:
Mallick H, Rahnavard A, McIver LJ, Ma S, Zhang Y, Nguyen LH, Tickle TL, Weingart G, Ren B, Schwager EH, Chatterjee S, Thompson KN, Wilkinson JE, Subramanian A, Lu Y, Waldron L, Paulson JN, Franzosa EA, Bravo HC, Huttenhower C (2021). Multivariable Association Discovery in Population-scale Meta-omics Studies. PLoS Computational Biology, 17(11):e1009442.
Check out the MaAsLin 2 tutorial for an overview of analysis options.
If you have questions, please direct it to :
MaAsLin2 Forum
Google Groups (Read only)
MaAsLin2 finds associations between microbiome multi-omics features and complex metadata in population-scale epidemiological studies. The software includes multiple analysis methods (with support for multiple covariates and repeated measures), filtering, normalization, and transform options to customize analysis for your specific study.
MaAsLin2 is an R package that can be run on the command line or as an R function.
MaAsLin2 can be run from the command line or as an R function. If only running from the command line, you do not need to install the MaAsLin2 package but you will need to install the MaAsLin2 dependencies.
$ tar xzvf maaslin2.tar.gz
$ R -q -e "install.packages(c('lmerTest','pbapply','car','dplyr','vegan','chemometrics','ggplot2','pheatmap','hash','logging','data.table','glmmTMB','MASS','cplm','pscl'), repos='http://cran.r-project.org')"
$ R CMD INSTALL maaslin2
Install Bioconductor and then install Maaslin2
if(!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("Maaslin2")
MaAsLin2 can be run from the command line or as an R function. Both methods require the same arguments, have the same options, and use the same default settings.
MaAsLin2 requires two input files.
The data file can contain samples not included in the metadata file (along with the reverse case). For both cases, those samples not included in both files will be removed from the analysis. Also the samples do not need to be in the same order in the two files.
NOTE: If running MaAsLin2 as a function, the data and metadata inputs can be of type data.frame
instead of a path to a file.
MaAsLin2 generates two types of output files: data and visualization.
all_results.tsv
N
column is the total number of data points.N.not.zero
column is the total of non-zero data points.p.adjust
with the correction method.significant_results.tsv
models.rds
residuals.rds
fitted.rds
ranef.rds
maaslin2.log
heatmap.pdf
[a-z/0-9]+.pdf
Example input files can be found in the inst/extdata
folder of the MaAsLin2 source. The files provided were generated from the HMP2 data which can be downloaded from https://ibdmdb.org/ .
HMP2_taxonomy.tsv
: is a tab-demilited file with species as columns and samples as rows. It is a subset of the taxonomy file so it just includes the species abundances for all samples.
HMP2_metadata.tsv
: is a tab-delimited file with samples as rows and metadata as columns. It is a subset of the metadata file so that it just includes some of the fields.
$ Maaslin2.R --fixed_effects="diagnosis,dysbiosisnonIBD,dysbiosisUC,dysbiosisCD,antibiotics,age" --random_effects="site,subject" --standardize=FALSE inst/extdata/HMP2_taxonomy.tsv inst/extdata/HMP2_metadata.tsv demo_output
HMP2_taxonomy.tsv
is the path to your data (or features) fileHMP2_metadata.tsv
is the path to your metadata filedemo_output
is the path to the folder to write the outputlibrary(Maaslin2)
input_data <- system.file(
'extdata','HMP2_taxonomy.tsv', package="Maaslin2")
input_metadata <-system.file(
'extdata','HMP2_metadata.tsv', package="Maaslin2")
fit_data <- Maaslin2(
input_data, input_metadata, 'demo_output',
fixed_effects = c('diagnosis', 'dysbiosisnonIBD','dysbiosisUC','dysbiosisCD', 'antibiotics', 'age'),
random_effects = c('site', 'subject'),
reference = "diagnosis,nonIBD",
standardize = FALSE)
## [1] "Creating output folder"
## [1] "Creating output feature tables folder"
## [1] "Creating output fits folder"
## [1] "Creating output figures folder"
## 2025-04-10 17:57:11.096961 INFO::Writing function arguments to log file
## 2025-04-10 17:57:11.128427 INFO::Verifying options selected are valid
## 2025-04-10 17:57:11.160036 INFO::Determining format of input files
## 2025-04-10 17:57:11.161402 INFO::Input format is data samples as rows and metadata samples as rows
## 2025-04-10 17:57:11.166078 INFO::Formula for random effects: expr ~ (1 | site) + (1 | subject)
## 2025-04-10 17:57:11.167213 INFO::Formula for fixed effects: expr ~ diagnosis + dysbiosisnonIBD + dysbiosisUC + dysbiosisCD + antibiotics + age
## 2025-04-10 17:57:11.169495 INFO::Filter data based on min abundance and min prevalence
## 2025-04-10 17:57:11.170236 INFO::Total samples in data: 1595
## 2025-04-10 17:57:11.170919 INFO::Min samples required with min abundance for a feature not to be filtered: 159.500000
## 2025-04-10 17:57:11.175754 INFO::Total filtered features: 0
## 2025-04-10 17:57:11.176629 INFO::Filtered feature names from abundance and prevalence filtering:
## 2025-04-10 17:57:11.18543 INFO::Total filtered features with variance filtering: 0
## 2025-04-10 17:57:11.186316 INFO::Filtered feature names from variance filtering:
## 2025-04-10 17:57:11.187016 INFO::Running selected normalization method: TSS
## 2025-04-10 17:57:12.374161 INFO::Bypass z-score application to metadata
## 2025-04-10 17:57:12.375422 INFO::Running selected transform method: LOG
## 2025-04-10 17:57:12.390549 INFO::Running selected analysis method: LM
## 2025-04-10 17:57:12.70589 INFO::Fitting model to feature number 1, Bifidobacterium.adolescentis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:13.313555 INFO::Fitting model to feature number 2, Bifidobacterium.bifidum
## 2025-04-10 17:57:13.459742 INFO::Fitting model to feature number 3, Bifidobacterium.longum
## 2025-04-10 17:57:13.615239 INFO::Fitting model to feature number 4, Bifidobacterium.pseudocatenulatum
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:13.769961 INFO::Fitting model to feature number 5, Collinsella.aerofaciens
## 2025-04-10 17:57:13.934213 INFO::Fitting model to feature number 6, Bacteroides.caccae
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:14.073685 INFO::Fitting model to feature number 7, Bacteroides.cellulosilyticus
## 2025-04-10 17:57:14.211062 INFO::Fitting model to feature number 8, Bacteroides.dorei
## 2025-04-10 17:57:14.367747 INFO::Fitting model to feature number 9, Bacteroides.eggerthii
## 2025-04-10 17:57:14.509343 INFO::Fitting model to feature number 10, Bacteroides.faecis
## 2025-04-10 17:57:14.651983 INFO::Fitting model to feature number 11, Bacteroides.finegoldii
## boundary (singular) fit: see help('isSingular')
## Feature Bacteroides.finegoldii : simpleWarning: Model failed to converge with 1 negative eigenvalue: -7.9e+01
## 2025-04-10 17:57:14.76664 WARNING::Fitting problem for feature 11 a warning was issued
## boundary (singular) fit: see help('isSingular')
## Warning: Model failed to converge with 1 negative eigenvalue: -7.9e+01
## 2025-04-10 17:57:14.911303 INFO::Fitting model to feature number 12, Bacteroides.fragilis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:15.047956 INFO::Fitting model to feature number 13, Bacteroides.intestinalis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:15.189199 INFO::Fitting model to feature number 14, Bacteroides.massiliensis
## 2025-04-10 17:57:15.330638 INFO::Fitting model to feature number 15, Bacteroides.ovatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:15.462711 INFO::Fitting model to feature number 16, Bacteroides.salyersiae
## 2025-04-10 17:57:15.60066 INFO::Fitting model to feature number 17, Bacteroides.stercoris
## 2025-04-10 17:57:15.74406 INFO::Fitting model to feature number 18, Bacteroides.thetaiotaomicron
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:15.905357 INFO::Fitting model to feature number 19, Bacteroides.uniformis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:16.048559 INFO::Fitting model to feature number 20, Bacteroides.vulgatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:16.203936 INFO::Fitting model to feature number 21, Bacteroides.xylanisolvens
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:16.345695 INFO::Fitting model to feature number 22, Bacteroidales.bacterium.ph8
## 2025-04-10 17:57:16.482429 INFO::Fitting model to feature number 23, Barnesiella.intestinihominis
## 2025-04-10 17:57:16.628678 INFO::Fitting model to feature number 24, Coprobacter.fastidiosus
## 2025-04-10 17:57:16.773244 INFO::Fitting model to feature number 25, Odoribacter.splanchnicus
## 2025-04-10 17:57:16.911368 INFO::Fitting model to feature number 26, Parabacteroides.distasonis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:17.052961 INFO::Fitting model to feature number 27, Parabacteroides.goldsteinii
## 2025-04-10 17:57:17.192822 INFO::Fitting model to feature number 28, Parabacteroides.merdae
## 2025-04-10 17:57:17.338361 INFO::Fitting model to feature number 29, Parabacteroides.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:17.487209 INFO::Fitting model to feature number 30, Paraprevotella.clara
## 2025-04-10 17:57:17.629332 INFO::Fitting model to feature number 31, Paraprevotella.unclassified
## 2025-04-10 17:57:17.770948 INFO::Fitting model to feature number 32, Prevotella.copri
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:17.914082 INFO::Fitting model to feature number 33, Alistipes.finegoldii
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:18.051517 INFO::Fitting model to feature number 34, Alistipes.onderdonkii
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:18.196464 INFO::Fitting model to feature number 35, Alistipes.putredinis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:18.346113 INFO::Fitting model to feature number 36, Alistipes.shahii
## 2025-04-10 17:57:18.488301 INFO::Fitting model to feature number 37, Alistipes.unclassified
## 2025-04-10 17:57:18.625748 INFO::Fitting model to feature number 38, Streptococcus.salivarius
## 2025-04-10 17:57:18.766757 INFO::Fitting model to feature number 39, Clostridium.bolteae
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:18.909092 INFO::Fitting model to feature number 40, Clostridium.citroniae
## boundary (singular) fit: see help('isSingular')
## Feature Clostridium.citroniae : simpleWarning: Model failed to converge with 1 negative eigenvalue: -3.4e+01
## 2025-04-10 17:57:19.02995 WARNING::Fitting problem for feature 40 a warning was issued
## boundary (singular) fit: see help('isSingular')
## Warning: Model failed to converge with 1 negative eigenvalue: -3.4e+01
## 2025-04-10 17:57:19.191674 INFO::Fitting model to feature number 41, Clostridium.clostridioforme
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:19.35234 INFO::Fitting model to feature number 42, Clostridium.hathewayi
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:19.494878 INFO::Fitting model to feature number 43, Clostridium.leptum
## 2025-04-10 17:57:19.649192 INFO::Fitting model to feature number 44, Clostridium.nexile
## 2025-04-10 17:57:19.784736 INFO::Fitting model to feature number 45, Clostridium.symbiosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:19.925559 INFO::Fitting model to feature number 46, Flavonifractor.plautii
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:20.066081 INFO::Fitting model to feature number 47, Eubacterium.eligens
## 2025-04-10 17:57:20.433764 INFO::Fitting model to feature number 48, Eubacterium.hallii
## 2025-04-10 17:57:20.576561 INFO::Fitting model to feature number 49, Eubacterium.rectale
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:20.72502 INFO::Fitting model to feature number 50, Eubacterium.siraeum
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:20.874452 INFO::Fitting model to feature number 51, Eubacterium.sp.3.1.31
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:21.019373 INFO::Fitting model to feature number 52, Eubacterium.ventriosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:21.154015 INFO::Fitting model to feature number 53, Ruminococcus.gnavus
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:21.300866 INFO::Fitting model to feature number 54, Ruminococcus.obeum
## 2025-04-10 17:57:21.443336 INFO::Fitting model to feature number 55, Ruminococcus.torques
## 2025-04-10 17:57:21.576584 INFO::Fitting model to feature number 56, Coprococcus.comes
## 2025-04-10 17:57:21.716153 INFO::Fitting model to feature number 57, Dorea.longicatena
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:21.863647 INFO::Fitting model to feature number 58, Lachnospiraceae.bacterium.1.1.57FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:22.00881 INFO::Fitting model to feature number 59, Lachnospiraceae.bacterium.3.1.46FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:22.147509 INFO::Fitting model to feature number 60, Roseburia.hominis
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:22.292153 INFO::Fitting model to feature number 61, Roseburia.intestinalis
## 2025-04-10 17:57:22.421448 INFO::Fitting model to feature number 62, Roseburia.inulinivorans
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:22.557623 INFO::Fitting model to feature number 63, Roseburia.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:22.699816 INFO::Fitting model to feature number 64, Oscillibacter.unclassified
## 2025-04-10 17:57:22.846464 INFO::Fitting model to feature number 65, Peptostreptococcaceae.noname.unclassified
## 2025-04-10 17:57:22.981113 INFO::Fitting model to feature number 66, Faecalibacterium.prausnitzii
## 2025-04-10 17:57:23.125069 INFO::Fitting model to feature number 67, Ruminococcus.bromii
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:23.254152 INFO::Fitting model to feature number 68, Ruminococcus.callidus
## 2025-04-10 17:57:23.387261 INFO::Fitting model to feature number 69, Ruminococcus.lactaris
## 2025-04-10 17:57:23.535862 INFO::Fitting model to feature number 70, Subdoligranulum.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:23.671119 INFO::Fitting model to feature number 71, Coprobacillus.unclassified
## 2025-04-10 17:57:23.803598 INFO::Fitting model to feature number 72, Acidaminococcus.unclassified
## 2025-04-10 17:57:23.950529 INFO::Fitting model to feature number 73, Dialister.invisus
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:24.083013 INFO::Fitting model to feature number 74, Veillonella.atypica
## 2025-04-10 17:57:24.223132 INFO::Fitting model to feature number 75, Veillonella.dispar
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:24.380903 INFO::Fitting model to feature number 76, Veillonella.parvula
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:24.526017 INFO::Fitting model to feature number 77, Veillonella.unclassified
## 2025-04-10 17:57:24.66401 INFO::Fitting model to feature number 78, Burkholderiales.bacterium.1.1.47
## 2025-04-10 17:57:24.817238 INFO::Fitting model to feature number 79, Parasutterella.excrementihominis
## 2025-04-10 17:57:24.949571 INFO::Fitting model to feature number 80, Sutterella.wadsworthensis
## 2025-04-10 17:57:25.088732 INFO::Fitting model to feature number 81, Bilophila.unclassified
## 2025-04-10 17:57:25.239925 INFO::Fitting model to feature number 82, Escherichia.coli
## 2025-04-10 17:57:25.381013 INFO::Fitting model to feature number 83, Escherichia.unclassified
## 2025-04-10 17:57:25.509713 INFO::Fitting model to feature number 84, Klebsiella.pneumoniae
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:25.866056 INFO::Fitting model to feature number 85, Haemophilus.parainfluenzae
## boundary (singular) fit: see help('isSingular')
## 2025-04-10 17:57:26.002773 INFO::Fitting model to feature number 86, Akkermansia.muciniphila
## 2025-04-10 17:57:26.144577 INFO::Fitting model to feature number 87, C2likevirus.unclassified
## 2025-04-10 17:57:26.337788 INFO::Counting total values for each feature
## 2025-04-10 17:57:26.382342 INFO::Writing filtered data to file demo_output/features/filtered_data.tsv
## 2025-04-10 17:57:26.475131 INFO::Writing filtered, normalized data to file demo_output/features/filtered_data_norm.tsv
## 2025-04-10 17:57:26.56892 INFO::Writing filtered, normalized, transformed data to file demo_output/features/filtered_data_norm_transformed.tsv
## 2025-04-10 17:57:26.74079 INFO::Writing residuals to file demo_output/fits/residuals.rds
## 2025-04-10 17:57:26.800255 INFO::Writing fitted values to file demo_output/fits/fitted.rds
## 2025-04-10 17:57:26.832059 INFO::Writing extracted random effects to file demo_output/fits/ranef.rds
## 2025-04-10 17:57:26.837202 INFO::Writing all results to file (ordered by increasing q-values): demo_output/all_results.tsv
## 2025-04-10 17:57:26.842155 INFO::Writing the significant results (those which are less than or equal to the threshold of 0.250000 ) to file (ordered by increasing q-values): demo_output/significant_results.tsv
## 2025-04-10 17:57:26.844437 INFO::Writing heatmap of significant results to file: demo_output/heatmap.pdf
## 2025-04-10 17:57:27.050693 INFO::Writing association plots (one for each significant association) to output folder: demo_output
## 2025-04-10 17:57:27.056704 INFO::Plotting associations from most to least significant, grouped by metadata
## 2025-04-10 17:57:27.057612 INFO::Plotting data for metadata number 1, dysbiosisCD
## 2025-04-10 17:57:27.059094 INFO::Creating boxplot for categorical data, dysbiosisCD vs Faecalibacterium.prausnitzii
## 2025-04-10 17:57:27.397302 INFO::Creating boxplot for categorical data, dysbiosisCD vs Subdoligranulum.unclassified
## 2025-04-10 17:57:27.681113 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.uniformis
## 2025-04-10 17:57:27.921208 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.rectale
## 2025-04-10 17:57:28.167014 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.vulgatus
## 2025-04-10 17:57:28.40722 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.ovatus
## 2025-04-10 17:57:28.649181 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.obeum
## 2025-04-10 17:57:28.888785 INFO::Creating boxplot for categorical data, dysbiosisCD vs Oscillibacter.unclassified
## 2025-04-10 17:57:29.132959 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.inulinivorans
## 2025-04-10 17:57:29.372992 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.hominis
## 2025-04-10 17:57:29.615548 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.thetaiotaomicron
## 2025-04-10 17:57:29.853381 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.putredinis
## 2025-04-10 17:57:30.097178 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.distasonis
## 2025-04-10 17:57:30.334698 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.dorei
## 2025-04-10 17:57:30.581182 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.shahii
## 2025-04-10 17:57:30.820563 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.xylanisolvens
## 2025-04-10 17:57:31.06142 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.leptum
## 2025-04-10 17:57:31.300304 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dorea.longicatena
## 2025-04-10 17:57:31.542661 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.caccae
## 2025-04-10 17:57:31.786485 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-10 17:57:32.032231 INFO::Creating boxplot for categorical data, dysbiosisCD vs Escherichia.coli
## 2025-04-10 17:57:32.27127 INFO::Creating boxplot for categorical data, dysbiosisCD vs Klebsiella.pneumoniae
## 2025-04-10 17:57:32.512334 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bilophila.unclassified
## 2025-04-10 17:57:32.742168 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.finegoldii
## 2025-04-10 17:57:32.981712 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.eligens
## 2025-04-10 17:57:33.226326 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.stercoris
## 2025-04-10 17:57:33.466343 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprococcus.comes
## 2025-04-10 17:57:33.70893 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.fragilis
## 2025-04-10 17:57:33.943357 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.finegoldii
## 2025-04-10 17:57:34.185641 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.hallii
## 2025-04-10 17:57:34.417349 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.faecis
## 2025-04-10 17:57:34.702162 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.clara
## 2025-04-10 17:57:34.938956 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.siraeum
## 2025-04-10 17:57:35.180588 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.merdae
## 2025-04-10 17:57:35.412869 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.unclassified
## 2025-04-10 17:57:35.669394 INFO::Creating boxplot for categorical data, dysbiosisCD vs Collinsella.aerofaciens
## 2025-04-10 17:57:35.921916 INFO::Creating boxplot for categorical data, dysbiosisCD vs Odoribacter.splanchnicus
## 2025-04-10 17:57:36.187504 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.clostridioforme
## 2025-04-10 17:57:36.424548 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.eggerthii
## 2025-04-10 17:57:36.67441 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.onderdonkii
## 2025-04-10 17:57:36.903808 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.ventriosum
## 2025-04-10 17:57:37.152447 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.lactaris
## 2025-04-10 17:57:37.38519 INFO::Creating boxplot for categorical data, dysbiosisCD vs Burkholderiales.bacterium.1.1.47
## 2025-04-10 17:57:37.628493 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dialister.invisus
## 2025-04-10 17:57:37.865592 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.bromii
## 2025-04-10 17:57:38.116485 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parasutterella.excrementihominis
## 2025-04-10 17:57:38.35025 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.unclassified
## 2025-04-10 17:57:38.600487 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.torques
## 2025-04-10 17:57:38.846287 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprobacillus.unclassified
## 2025-04-10 17:57:39.11932 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.cellulosilyticus
## 2025-04-10 17:57:39.357277 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.intestinalis
## 2025-04-10 17:57:39.600561 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.unclassified
## 2025-04-10 17:57:39.838952 INFO::Creating boxplot for categorical data, dysbiosisCD vs Acidaminococcus.unclassified
## 2025-04-10 17:57:40.084658 INFO::Creating boxplot for categorical data, dysbiosisCD vs Barnesiella.intestinihominis
## 2025-04-10 17:57:40.318016 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.massiliensis
## 2025-04-10 17:57:40.560182 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.sp.3.1.31
## 2025-04-10 17:57:40.805765 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.salyersiae
## 2025-04-10 17:57:41.037513 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroidales.bacterium.ph8
## 2025-04-10 17:57:41.282767 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.citroniae
## 2025-04-10 17:57:41.519324 INFO::Creating boxplot for categorical data, dysbiosisCD vs Flavonifractor.plautii
## 2025-04-10 17:57:41.773911 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.goldsteinii
## 2025-04-10 17:57:42.02052 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bifidobacterium.longum
## 2025-04-10 17:57:42.280974 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-10 17:57:45.425082 INFO::Plotting data for metadata number 2, dysbiosisUC
## 2025-04-10 17:57:45.42707 INFO::Creating boxplot for categorical data, dysbiosisUC vs Subdoligranulum.unclassified
## 2025-04-10 17:57:45.650836 INFO::Creating boxplot for categorical data, dysbiosisUC vs Faecalibacterium.prausnitzii
## 2025-04-10 17:57:45.89994 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.caccae
## 2025-04-10 17:57:46.155654 INFO::Creating boxplot for categorical data, dysbiosisUC vs Oscillibacter.unclassified
## 2025-04-10 17:57:46.402754 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.uniformis
## 2025-04-10 17:57:46.660339 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.siraeum
## 2025-04-10 17:57:46.906947 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.ovatus
## 2025-04-10 17:57:47.156143 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.fragilis
## 2025-04-10 17:57:47.406244 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.shahii
## 2025-04-10 17:57:47.665643 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.rectale
## 2025-04-10 17:57:47.904964 INFO::Creating boxplot for categorical data, dysbiosisUC vs Roseburia.hominis
## 2025-04-10 17:57:48.160596 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.putredinis
## 2025-04-10 17:57:48.404603 INFO::Creating boxplot for categorical data, dysbiosisUC vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-10 17:57:48.686407 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.hallii
## 2025-04-10 17:57:48.940833 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.xylanisolvens
## 2025-04-10 17:57:49.193698 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.stercoris
## 2025-04-10 17:57:49.438634 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.finegoldii
## 2025-04-10 17:57:49.695165 INFO::Creating boxplot for categorical data, dysbiosisUC vs Barnesiella.intestinihominis
## 2025-04-10 17:57:49.945908 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.leptum
## 2025-04-10 17:57:50.193961 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.gnavus
## 2025-04-10 17:57:50.434114 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.onderdonkii
## 2025-04-10 17:57:50.687214 INFO::Creating boxplot for categorical data, dysbiosisUC vs Flavonifractor.plautii
## 2025-04-10 17:57:50.928149 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.merdae
## 2025-04-10 17:57:51.18321 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.cellulosilyticus
## 2025-04-10 17:57:51.438745 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.longum
## 2025-04-10 17:57:51.685967 INFO::Creating boxplot for categorical data, dysbiosisUC vs Klebsiella.pneumoniae
## 2025-04-10 17:57:51.938057 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.citroniae
## 2025-04-10 17:57:52.170982 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.ventriosum
## 2025-04-10 17:57:52.420303 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.distasonis
## 2025-04-10 17:57:52.660249 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.goldsteinii
## 2025-04-10 17:57:52.914467 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.torques
## 2025-04-10 17:57:53.147834 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroidales.bacterium.ph8
## 2025-04-10 17:57:53.405183 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.obeum
## 2025-04-10 17:57:53.639452 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.bifidum
## 2025-04-10 17:57:53.898049 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.adolescentis
## 2025-04-10 17:57:54.145756 INFO::Creating boxplot for categorical data, dysbiosisUC vs Collinsella.aerofaciens
## 2025-04-10 17:57:54.385585 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.hathewayi
## 2025-04-10 17:57:54.64002 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bilophila.unclassified
## 2025-04-10 17:57:54.88045 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.eligens
## 2025-04-10 17:57:55.165094 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.vulgatus
## 2025-04-10 17:57:55.409386 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.bolteae
## 2025-04-10 17:57:55.671718 INFO::Creating boxplot for categorical data, dysbiosisUC vs Dialister.invisus
## 2025-04-10 17:57:55.918856 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.lactaris
## 2025-04-10 17:57:56.175284 INFO::Creating boxplot for categorical data, dysbiosisUC vs Burkholderiales.bacterium.1.1.47
## 2025-04-10 17:57:59.259204 INFO::Plotting data for metadata number 3, dysbiosisnonIBD
## 2025-04-10 17:57:59.261077 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Faecalibacterium.prausnitzii
## 2025-04-10 17:57:59.478921 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.rectale
## 2025-04-10 17:57:59.756148 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.sp.3.1.31
## 2025-04-10 17:58:00.02225 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.hominis
## 2025-04-10 17:58:00.295792 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Subdoligranulum.unclassified
## 2025-04-10 17:58:00.544169 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-10 17:58:00.815258 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.torques
## 2025-04-10 17:58:01.061551 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Clostridium.leptum
## 2025-04-10 17:58:01.329132 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Odoribacter.splanchnicus
## 2025-04-10 17:58:01.591639 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Escherichia.coli
## 2025-04-10 17:58:01.836486 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.obeum
## 2025-04-10 17:58:02.101451 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bilophila.unclassified
## 2025-04-10 17:58:02.353889 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.uniformis
## 2025-04-10 17:58:02.617048 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.eligens
## 2025-04-10 17:58:02.865023 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Klebsiella.pneumoniae
## 2025-04-10 17:58:03.125754 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.bromii
## 2025-04-10 17:58:03.361737 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.vulgatus
## 2025-04-10 17:58:03.616747 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs C2likevirus.unclassified
## 2025-04-10 17:58:03.868197 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bifidobacterium.adolescentis
## 2025-04-10 17:58:04.123176 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.finegoldii
## 2025-04-10 17:58:04.380571 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.inulinivorans
## 2025-04-10 17:58:04.625701 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.onderdonkii
## 2025-04-10 17:58:04.922998 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.unclassified
## 2025-04-10 17:58:05.176277 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.hallii
## 2025-04-10 17:58:05.437732 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.intestinalis
## 2025-04-10 17:58:05.684882 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Prevotella.copri
## 2025-04-10 17:58:06.007231 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.dorei
## 2025-04-10 17:58:06.246651 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.fragilis
## 2025-04-10 17:58:06.506351 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.shahii
## 2025-04-10 17:58:09.607855 INFO::Plotting data for metadata number 4, antibiotics
## 2025-04-10 17:58:09.609781 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.inulinivorans
## 2025-04-10 17:58:09.824254 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.hominis
## 2025-04-10 17:58:10.068456 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.rectale
## 2025-04-10 17:58:10.302294 INFO::Creating boxplot for categorical data, antibiotics vs Dialister.invisus
## 2025-04-10 17:58:10.55522 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.intestinalis
## 2025-04-10 17:58:10.787524 INFO::Creating boxplot for categorical data, antibiotics vs Dorea.longicatena
## 2025-04-10 17:58:11.037418 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.callidus
## 2025-04-10 17:58:11.271577 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.bromii
## 2025-04-10 17:58:11.515408 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.obeum
## 2025-04-10 17:58:11.742692 INFO::Creating boxplot for categorical data, antibiotics vs Klebsiella.pneumoniae
## 2025-04-10 17:58:11.996297 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.adolescentis
## 2025-04-10 17:58:12.223386 INFO::Creating boxplot for categorical data, antibiotics vs Faecalibacterium.prausnitzii
## 2025-04-10 17:58:12.471145 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.hallii
## 2025-04-10 17:58:12.71139 INFO::Creating boxplot for categorical data, antibiotics vs Bilophila.unclassified
## 2025-04-10 17:58:12.961554 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.leptum
## 2025-04-10 17:58:13.201015 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-10 17:58:13.439608 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.finegoldii
## 2025-04-10 17:58:13.680111 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.sp.3.1.31
## 2025-04-10 17:58:13.908997 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.fragilis
## 2025-04-10 17:58:14.143217 INFO::Creating boxplot for categorical data, antibiotics vs Alistipes.onderdonkii
## 2025-04-10 17:58:14.374895 INFO::Creating boxplot for categorical data, antibiotics vs Sutterella.wadsworthensis
## 2025-04-10 17:58:14.656941 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.eligens
## 2025-04-10 17:58:14.893259 INFO::Creating boxplot for categorical data, antibiotics vs Collinsella.aerofaciens
## 2025-04-10 17:58:15.142321 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.thetaiotaomicron
## 2025-04-10 17:58:15.373431 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.eggerthii
## 2025-04-10 17:58:15.616708 INFO::Creating boxplot for categorical data, antibiotics vs Haemophilus.parainfluenzae
## 2025-04-10 17:58:15.841472 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.pseudocatenulatum
## 2025-04-10 17:58:16.082403 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.torques
## 2025-04-10 17:58:16.307643 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.ventriosum
## 2025-04-10 17:58:16.592834 INFO::Creating boxplot for categorical data, antibiotics vs Parasutterella.excrementihominis
## 2025-04-10 17:58:16.825806 INFO::Creating boxplot for categorical data, antibiotics vs Peptostreptococcaceae.noname.unclassified
## 2025-04-10 17:58:17.077292 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.dispar
## 2025-04-10 17:58:17.306262 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.atypica
## 2025-04-10 17:58:17.550979 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroidales.bacterium.ph8
## 2025-04-10 17:58:17.782432 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.nexile
## 2025-04-10 17:58:18.029896 INFO::Creating boxplot for categorical data, antibiotics vs Burkholderiales.bacterium.1.1.47
## 2025-04-10 17:58:18.262042 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-10 17:58:18.514034 INFO::Creating boxplot for categorical data, antibiotics vs Akkermansia.muciniphila
## 2025-04-10 17:58:18.746727 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.citroniae
## 2025-04-10 17:58:18.995096 INFO::Creating boxplot for categorical data, antibiotics vs Odoribacter.splanchnicus
## 2025-04-10 17:58:21.990758 INFO::Plotting data for metadata number 5, age
## 2025-04-10 17:58:21.992869 INFO::Creating scatter plot for continuous data, age vs Haemophilus.parainfluenzae
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:22.257387 INFO::Creating scatter plot for continuous data, age vs Bifidobacterium.pseudocatenulatum
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:22.593888 INFO::Creating scatter plot for continuous data, age vs Faecalibacterium.prausnitzii
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:22.837145 INFO::Creating scatter plot for continuous data, age vs Clostridium.clostridioforme
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:23.087217 INFO::Creating scatter plot for continuous data, age vs Veillonella.parvula
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:23.334809 INFO::Creating scatter plot for continuous data, age vs Subdoligranulum.unclassified
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:23.584444 INFO::Creating scatter plot for continuous data, age vs Clostridium.symbiosum
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:23.833115 INFO::Creating scatter plot for continuous data, age vs Ruminococcus.gnavus
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:24.091058 INFO::Creating scatter plot for continuous data, age vs Dialister.invisus
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:24.327554 INFO::Creating scatter plot for continuous data, age vs Veillonella.dispar
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:24.584007 INFO::Creating scatter plot for continuous data, age vs Veillonella.unclassified
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:24.830939 INFO::Creating scatter plot for continuous data, age vs Bacteroides.thetaiotaomicron
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:25.066685 INFO::Creating scatter plot for continuous data, age vs Ruminococcus.bromii
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:25.327941 INFO::Creating scatter plot for continuous data, age vs Bacteroides.intestinalis
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:25.579192 INFO::Creating scatter plot for continuous data, age vs Eubacterium.siraeum
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:25.808103 INFO::Creating scatter plot for continuous data, age vs Prevotella.copri
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:26.060866 INFO::Creating scatter plot for continuous data, age vs Alistipes.unclassified
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:26.59598 INFO::Creating scatter plot for continuous data, age vs Bacteroidales.bacterium.ph8
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:26.81244 INFO::Creating scatter plot for continuous data, age vs Bifidobacterium.longum
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:27.040277 INFO::Creating scatter plot for continuous data, age vs Akkermansia.muciniphila
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:27.265828 INFO::Creating scatter plot for continuous data, age vs Collinsella.aerofaciens
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:27.49021 INFO::Creating scatter plot for continuous data, age vs Parabacteroides.distasonis
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## `geom_smooth()` using formula = 'y ~ x'
## Warning: Removed 19 rows containing missing values or values outside the scale range
## (`geom_point()`).
## 2025-04-10 17:58:30.406949 INFO::Plotting data for metadata number 6, diagnosis
## 2025-04-10 17:58:30.408738 INFO::Creating boxplot for categorical data, diagnosis vs Bifidobacterium.adolescentis
## 2025-04-10 17:58:30.620962 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-10 17:58:30.856173 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-10 17:58:31.093207 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-10 17:58:31.332347 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-10 17:58:31.57015 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.clostridioforme
## 2025-04-10 17:58:31.810084 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-10 17:58:32.036671 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-10 17:58:32.278866 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-10 17:58:32.510026 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-10 17:58:32.754847 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.inulinivorans
## 2025-04-10 17:58:32.993011 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-10 17:58:33.238983 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-10 17:58:33.475919 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-10 17:58:33.721223 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.goldsteinii
## 2025-04-10 17:58:33.956395 INFO::Creating boxplot for categorical data, diagnosis vs Bilophila.unclassified
## 2025-04-10 17:58:34.189914 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-10 17:58:34.434751 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-10 17:58:34.670282 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-10 17:58:34.92166 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-10 17:58:35.151319 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.ventriosum
## 2025-04-10 17:58:35.394248 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-10 17:58:35.627592 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-10 17:58:35.871462 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-10 17:58:36.139154 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-10 17:58:36.379148 INFO::Creating boxplot for categorical data, diagnosis vs Subdoligranulum.unclassified
## 2025-04-10 17:58:36.621958 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-10 17:58:36.863484 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-10 17:58:37.113962 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.unclassified
## 2025-04-10 17:58:37.352522 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.lactaris
## 2025-04-10 17:58:37.600626 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-10 17:58:37.834554 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.gnavus
## 2025-04-10 17:58:38.080211 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.fragilis
## 2025-04-10 17:58:38.31653 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-10 17:58:38.566126 INFO::Creating boxplot for categorical data, diagnosis vs Odoribacter.splanchnicus
## 2025-04-10 17:58:38.804781 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.distasonis
## 2025-04-10 17:58:39.05168 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-10 17:58:39.287962 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.finegoldii
## 2025-04-10 17:58:39.543434 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-10 17:58:39.77678 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-10 17:58:40.022774 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-10 17:58:40.268652 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-10 17:58:40.506241 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.siraeum
Session info from running the demo in R can be displayed with the following command.
sessionInfo()
## R version 4.5.0 beta (2025-04-02 r88102)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 24.04.2 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.22-bioc/R/lib/libRblas.so
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.12.0 LAPACK version 3.12.0
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_GB LC_COLLATE=C
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## time zone: America/New_York
## tzcode source: system (glibc)
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] Maaslin2_1.21.0
##
## loaded via a namespace (and not attached):
## [1] gtable_0.3.6 biglm_0.9-3 xfun_0.52
## [4] bslib_0.9.0 ggplot2_3.5.2 lattice_0.22-7
## [7] numDeriv_2016.8-1.1 vctrs_0.6.5 tools_4.5.0
## [10] Rdpack_2.6.4 generics_0.1.3 parallel_4.5.0
## [13] getopt_1.20.4 tibble_3.2.1 DEoptimR_1.1-3-1
## [16] cluster_2.1.8.1 pkgconfig_2.0.3 logging_0.10-108
## [19] pheatmap_1.0.12 Matrix_1.7-3 data.table_1.17.0
## [22] RColorBrewer_1.1-3 lifecycle_1.0.4 farver_2.1.2
## [25] compiler_4.5.0 munsell_0.5.1 lmerTest_3.1-3
## [28] permute_0.9-7 htmltools_0.5.8.1 sass_0.4.9
## [31] hash_2.2.6.3 yaml_2.3.10 pillar_1.10.2
## [34] nloptr_2.2.1 crayon_1.5.3 jquerylib_0.1.4
## [37] MASS_7.3-65 cachem_1.1.0 vegan_2.6-10
## [40] reformulas_0.4.0 boot_1.3-31 nlme_3.1-168
## [43] robustbase_0.99-4-1 tidyselect_1.2.1 digest_0.6.37
## [46] mvtnorm_1.3-3 dplyr_1.1.4 labeling_0.4.3
## [49] splines_4.5.0 pcaPP_2.0-5 fastmap_1.2.0
## [52] grid_4.5.0 colorspace_2.1-1 cli_3.6.4
## [55] magrittr_2.0.3 withr_3.0.2 scales_1.3.0
## [58] rmarkdown_2.29 lme4_1.1-37 pbapply_1.7-2
## [61] evaluate_1.0.3 knitr_1.50 rbibutils_2.3
## [64] mgcv_1.9-3 rlang_1.1.5 Rcpp_1.0.14
## [67] glue_1.8.0 optparse_1.7.5 DBI_1.2.3
## [70] minqa_1.2.8 jsonlite_2.0.0 R6_2.6.1
Run MaAsLin2 help to print a list of the options and the default settings.
$ Maaslin2.R –help Usage: ./R/Maaslin2.R options <data.tsv> <metadata.tsv>
Options: -h, –help Show this help message and exit
-a MIN_ABUNDANCE, --min_abundance=MIN_ABUNDANCE
The minimum abundance for each feature [ Default: 0 ]
-p MIN_PREVALENCE, --min_prevalence=MIN_PREVALENCE
The minimum percent of samples for which a feature
is detected at minimum abundance [ Default: 0.1 ]
-b MIN_VARIANCE, --min_variance=MIN_VARIANCE
Keep features with variance greater than [ Default: 0.0 ]
-s MAX_SIGNIFICANCE, --max_significance=MAX_SIGNIFICANCE
The q-value threshold for significance [ Default: 0.25 ]
-n NORMALIZATION, --normalization=NORMALIZATION
The normalization method to apply [ Default: TSS ]
[ Choices: TSS, CLR, CSS, NONE, TMM ]
-t TRANSFORM, --transform=TRANSFORM
The transform to apply [ Default: LOG ]
[ Choices: LOG, LOGIT, AST, NONE ]
-m ANALYSIS_METHOD, --analysis_method=ANALYSIS_METHOD
The analysis method to apply [ Default: LM ]
[ Choices: LM, CPLM, NEGBIN, ZINB ]
-r RANDOM_EFFECTS, --random_effects=RANDOM_EFFECTS
The random effects for the model, comma-delimited
for multiple effects [ Default: none ]
-f FIXED_EFFECTS, --fixed_effects=FIXED_EFFECTS
The fixed effects for the model, comma-delimited
for multiple effects [ Default: all ]
-c CORRECTION, --correction=CORRECTION
The correction method for computing the
q-value [ Default: BH ]
-z STANDARDIZE, --standardize=STANDARDIZE
Apply z-score so continuous metadata are
on the same scale [ Default: TRUE ]
-l PLOT_HEATMAP, --plot_heatmap=PLOT_HEATMAP
Generate a heatmap for the significant
associations [ Default: TRUE ]
-i HEATMAP_FIRST_N, --heatmap_first_n=HEATMAP_FIRST_N
In heatmap, plot top N features with significant
associations [ Default: TRUE ]
-o PLOT_SCATTER, --plot_scatter=PLOT_SCATTER
Generate scatter plots for the significant
associations [ Default: TRUE ]
-g MAX_PNGS, --max_pngs=MAX_PNGS
The maximum number of scatter plots for signficant associations
to save as png files [ Default: 10 ]
-O SAVE_SCATTER, --save_scatter=SAVE_SCATTER
Save all scatter plot ggplot objects
to an RData file [ Default: FALSE ]
-e CORES, --cores=CORES
The number of R processes to run in parallel
[ Default: 1 ]
-j SAVE_MODELS --save_models=SAVE_MODELS
Return the full model outputs and save to an RData file
[ Default: FALSE ]
-d REFERENCE, --reference=REFERENCE
The factor to use as a reference level for a categorical variable
provided as a string of 'variable,reference', semi-colon delimited for
multiple variables. Not required if metadata is passed as a factor or
for variables with less than two levels but can be set regardless.
[ Default: NA ]
Maaslin2.R: command not found
. How do I fix this?
Error in library(Maaslin2): there is no package called 'Maaslin2'
. How do I fix this?