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-15 21:39:14.215241 INFO::Writing function arguments to log file
## 2025-04-15 21:39:14.253664 INFO::Verifying options selected are valid
## 2025-04-15 21:39:14.296987 INFO::Determining format of input files
## 2025-04-15 21:39:14.299038 INFO::Input format is data samples as rows and metadata samples as rows
## 2025-04-15 21:39:14.305936 INFO::Formula for random effects: expr ~ (1 | site) + (1 | subject)
## 2025-04-15 21:39:14.307928 INFO::Formula for fixed effects: expr ~ diagnosis + dysbiosisnonIBD + dysbiosisUC + dysbiosisCD + antibiotics + age
## 2025-04-15 21:39:14.310992 INFO::Filter data based on min abundance and min prevalence
## 2025-04-15 21:39:14.316729 INFO::Total samples in data: 1595
## 2025-04-15 21:39:14.318441 INFO::Min samples required with min abundance for a feature not to be filtered: 159.500000
## 2025-04-15 21:39:14.32363 INFO::Total filtered features: 0
## 2025-04-15 21:39:14.325578 INFO::Filtered feature names from abundance and prevalence filtering:
## 2025-04-15 21:39:14.33448 INFO::Total filtered features with variance filtering: 0
## 2025-04-15 21:39:14.336279 INFO::Filtered feature names from variance filtering:
## 2025-04-15 21:39:14.337734 INFO::Running selected normalization method: TSS
## 2025-04-15 21:39:15.698992 INFO::Bypass z-score application to metadata
## 2025-04-15 21:39:15.700733 INFO::Running selected transform method: LOG
## 2025-04-15 21:39:15.721175 INFO::Running selected analysis method: LM
## 2025-04-15 21:39:16.161051 INFO::Fitting model to feature number 1, Bifidobacterium.adolescentis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:16.577431 INFO::Fitting model to feature number 2, Bifidobacterium.bifidum
## 2025-04-15 21:39:16.969025 INFO::Fitting model to feature number 3, Bifidobacterium.longum
## 2025-04-15 21:39:17.101721 INFO::Fitting model to feature number 4, Bifidobacterium.pseudocatenulatum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:17.307535 INFO::Fitting model to feature number 5, Collinsella.aerofaciens
## 2025-04-15 21:39:17.556539 INFO::Fitting model to feature number 6, Bacteroides.caccae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:17.792333 INFO::Fitting model to feature number 7, Bacteroides.cellulosilyticus
## 2025-04-15 21:39:17.982407 INFO::Fitting model to feature number 8, Bacteroides.dorei
## 2025-04-15 21:39:18.125156 INFO::Fitting model to feature number 9, Bacteroides.eggerthii
## 2025-04-15 21:39:18.26106 INFO::Fitting model to feature number 10, Bacteroides.faecis
## 2025-04-15 21:39:18.400766 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-15 21:39:18.50607 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-15 21:39:18.635798 INFO::Fitting model to feature number 12, Bacteroides.fragilis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:18.775829 INFO::Fitting model to feature number 13, Bacteroides.intestinalis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:18.905154 INFO::Fitting model to feature number 14, Bacteroides.massiliensis
## 2025-04-15 21:39:19.034221 INFO::Fitting model to feature number 15, Bacteroides.ovatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:19.188503 INFO::Fitting model to feature number 16, Bacteroides.salyersiae
## 2025-04-15 21:39:19.391296 INFO::Fitting model to feature number 17, Bacteroides.stercoris
## 2025-04-15 21:39:19.589773 INFO::Fitting model to feature number 18, Bacteroides.thetaiotaomicron
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:19.760474 INFO::Fitting model to feature number 19, Bacteroides.uniformis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:19.896473 INFO::Fitting model to feature number 20, Bacteroides.vulgatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:20.037661 INFO::Fitting model to feature number 21, Bacteroides.xylanisolvens
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:20.181801 INFO::Fitting model to feature number 22, Bacteroidales.bacterium.ph8
## 2025-04-15 21:39:20.315064 INFO::Fitting model to feature number 23, Barnesiella.intestinihominis
## 2025-04-15 21:39:20.440979 INFO::Fitting model to feature number 24, Coprobacter.fastidiosus
## 2025-04-15 21:39:20.574498 INFO::Fitting model to feature number 25, Odoribacter.splanchnicus
## 2025-04-15 21:39:20.714415 INFO::Fitting model to feature number 26, Parabacteroides.distasonis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:20.845348 INFO::Fitting model to feature number 27, Parabacteroides.goldsteinii
## 2025-04-15 21:39:20.989537 INFO::Fitting model to feature number 28, Parabacteroides.merdae
## 2025-04-15 21:39:21.184956 INFO::Fitting model to feature number 29, Parabacteroides.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:21.337079 INFO::Fitting model to feature number 30, Paraprevotella.clara
## 2025-04-15 21:39:21.496914 INFO::Fitting model to feature number 31, Paraprevotella.unclassified
## 2025-04-15 21:39:21.7097 INFO::Fitting model to feature number 32, Prevotella.copri
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:21.915129 INFO::Fitting model to feature number 33, Alistipes.finegoldii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:22.123508 INFO::Fitting model to feature number 34, Alistipes.onderdonkii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:22.30661 INFO::Fitting model to feature number 35, Alistipes.putredinis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:22.509626 INFO::Fitting model to feature number 36, Alistipes.shahii
## 2025-04-15 21:39:22.663849 INFO::Fitting model to feature number 37, Alistipes.unclassified
## 2025-04-15 21:39:22.836803 INFO::Fitting model to feature number 38, Streptococcus.salivarius
## 2025-04-15 21:39:23.036334 INFO::Fitting model to feature number 39, Clostridium.bolteae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:23.213751 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-15 21:39:23.350907 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-15 21:39:23.495267 INFO::Fitting model to feature number 41, Clostridium.clostridioforme
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:23.61678 INFO::Fitting model to feature number 42, Clostridium.hathewayi
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:23.765389 INFO::Fitting model to feature number 43, Clostridium.leptum
## 2025-04-15 21:39:23.928631 INFO::Fitting model to feature number 44, Clostridium.nexile
## 2025-04-15 21:39:24.104052 INFO::Fitting model to feature number 45, Clostridium.symbiosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:24.294683 INFO::Fitting model to feature number 46, Flavonifractor.plautii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:24.426724 INFO::Fitting model to feature number 47, Eubacterium.eligens
## 2025-04-15 21:39:24.585882 INFO::Fitting model to feature number 48, Eubacterium.hallii
## 2025-04-15 21:39:24.721143 INFO::Fitting model to feature number 49, Eubacterium.rectale
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:24.891445 INFO::Fitting model to feature number 50, Eubacterium.siraeum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:25.026261 INFO::Fitting model to feature number 51, Eubacterium.sp.3.1.31
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:25.225376 INFO::Fitting model to feature number 52, Eubacterium.ventriosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:25.415562 INFO::Fitting model to feature number 53, Ruminococcus.gnavus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:25.58696 INFO::Fitting model to feature number 54, Ruminococcus.obeum
## 2025-04-15 21:39:25.723889 INFO::Fitting model to feature number 55, Ruminococcus.torques
## 2025-04-15 21:39:25.937712 INFO::Fitting model to feature number 56, Coprococcus.comes
## 2025-04-15 21:39:26.157452 INFO::Fitting model to feature number 57, Dorea.longicatena
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:26.376127 INFO::Fitting model to feature number 58, Lachnospiraceae.bacterium.1.1.57FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:26.635265 INFO::Fitting model to feature number 59, Lachnospiraceae.bacterium.3.1.46FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:26.850357 INFO::Fitting model to feature number 60, Roseburia.hominis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:27.030974 INFO::Fitting model to feature number 61, Roseburia.intestinalis
## 2025-04-15 21:39:27.202014 INFO::Fitting model to feature number 62, Roseburia.inulinivorans
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:27.360763 INFO::Fitting model to feature number 63, Roseburia.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:27.51477 INFO::Fitting model to feature number 64, Oscillibacter.unclassified
## 2025-04-15 21:39:27.666282 INFO::Fitting model to feature number 65, Peptostreptococcaceae.noname.unclassified
## 2025-04-15 21:39:27.807869 INFO::Fitting model to feature number 66, Faecalibacterium.prausnitzii
## 2025-04-15 21:39:27.974664 INFO::Fitting model to feature number 67, Ruminococcus.bromii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:28.132261 INFO::Fitting model to feature number 68, Ruminococcus.callidus
## 2025-04-15 21:39:28.289477 INFO::Fitting model to feature number 69, Ruminococcus.lactaris
## 2025-04-15 21:39:28.464025 INFO::Fitting model to feature number 70, Subdoligranulum.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:28.699215 INFO::Fitting model to feature number 71, Coprobacillus.unclassified
## 2025-04-15 21:39:28.864497 INFO::Fitting model to feature number 72, Acidaminococcus.unclassified
## 2025-04-15 21:39:29.019143 INFO::Fitting model to feature number 73, Dialister.invisus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:29.160237 INFO::Fitting model to feature number 74, Veillonella.atypica
## 2025-04-15 21:39:29.304704 INFO::Fitting model to feature number 75, Veillonella.dispar
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:29.443682 INFO::Fitting model to feature number 76, Veillonella.parvula
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:29.608672 INFO::Fitting model to feature number 77, Veillonella.unclassified
## 2025-04-15 21:39:29.776279 INFO::Fitting model to feature number 78, Burkholderiales.bacterium.1.1.47
## 2025-04-15 21:39:29.991594 INFO::Fitting model to feature number 79, Parasutterella.excrementihominis
## 2025-04-15 21:39:30.160851 INFO::Fitting model to feature number 80, Sutterella.wadsworthensis
## 2025-04-15 21:39:30.292672 INFO::Fitting model to feature number 81, Bilophila.unclassified
## 2025-04-15 21:39:30.429651 INFO::Fitting model to feature number 82, Escherichia.coli
## 2025-04-15 21:39:30.573614 INFO::Fitting model to feature number 83, Escherichia.unclassified
## 2025-04-15 21:39:30.699159 INFO::Fitting model to feature number 84, Klebsiella.pneumoniae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:30.871484 INFO::Fitting model to feature number 85, Haemophilus.parainfluenzae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 21:39:31.005923 INFO::Fitting model to feature number 86, Akkermansia.muciniphila
## 2025-04-15 21:39:31.156185 INFO::Fitting model to feature number 87, C2likevirus.unclassified
## 2025-04-15 21:39:31.407956 INFO::Counting total values for each feature
## 2025-04-15 21:39:31.465162 INFO::Writing filtered data to file demo_output/features/filtered_data.tsv
## 2025-04-15 21:39:31.863904 INFO::Writing filtered, normalized data to file demo_output/features/filtered_data_norm.tsv
## 2025-04-15 21:39:32.207852 INFO::Writing filtered, normalized, transformed data to file demo_output/features/filtered_data_norm_transformed.tsv
## 2025-04-15 21:39:32.731644 INFO::Writing residuals to file demo_output/fits/residuals.rds
## 2025-04-15 21:39:32.797844 INFO::Writing fitted values to file demo_output/fits/fitted.rds
## 2025-04-15 21:39:32.831577 INFO::Writing extracted random effects to file demo_output/fits/ranef.rds
## 2025-04-15 21:39:32.838499 INFO::Writing all results to file (ordered by increasing q-values): demo_output/all_results.tsv
## 2025-04-15 21:39:32.861432 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-15 21:39:32.872225 INFO::Writing heatmap of significant results to file: demo_output/heatmap.pdf
## 2025-04-15 21:39:33.111913 INFO::Writing association plots (one for each significant association) to output folder: demo_output
## 2025-04-15 21:39:33.122541 INFO::Plotting associations from most to least significant, grouped by metadata
## 2025-04-15 21:39:33.125304 INFO::Plotting data for metadata number 1, dysbiosisCD
## 2025-04-15 21:39:33.128997 INFO::Creating boxplot for categorical data, dysbiosisCD vs Faecalibacterium.prausnitzii
## 2025-04-15 21:39:33.619334 INFO::Creating boxplot for categorical data, dysbiosisCD vs Subdoligranulum.unclassified
## 2025-04-15 21:39:34.032022 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.uniformis
## 2025-04-15 21:39:34.413795 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.rectale
## 2025-04-15 21:39:35.09706 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.vulgatus
## 2025-04-15 21:39:35.477245 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.ovatus
## 2025-04-15 21:39:35.896394 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.obeum
## 2025-04-15 21:39:36.291474 INFO::Creating boxplot for categorical data, dysbiosisCD vs Oscillibacter.unclassified
## 2025-04-15 21:39:36.694717 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.inulinivorans
## 2025-04-15 21:39:37.086455 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.hominis
## 2025-04-15 21:39:37.497014 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.thetaiotaomicron
## 2025-04-15 21:39:37.815614 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.putredinis
## 2025-04-15 21:39:38.109177 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.distasonis
## 2025-04-15 21:39:38.442564 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.dorei
## 2025-04-15 21:39:38.843299 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.shahii
## 2025-04-15 21:39:39.655695 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.xylanisolvens
## 2025-04-15 21:39:40.040034 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.leptum
## 2025-04-15 21:39:40.334663 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dorea.longicatena
## 2025-04-15 21:39:40.600819 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.caccae
## 2025-04-15 21:39:40.902474 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 21:39:41.203595 INFO::Creating boxplot for categorical data, dysbiosisCD vs Escherichia.coli
## 2025-04-15 21:39:41.473824 INFO::Creating boxplot for categorical data, dysbiosisCD vs Klebsiella.pneumoniae
## 2025-04-15 21:39:41.749089 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bilophila.unclassified
## 2025-04-15 21:39:41.980968 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.finegoldii
## 2025-04-15 21:39:42.260625 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.eligens
## 2025-04-15 21:39:42.528172 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.stercoris
## 2025-04-15 21:39:42.827033 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprococcus.comes
## 2025-04-15 21:39:43.120575 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.fragilis
## 2025-04-15 21:39:43.542738 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.finegoldii
## 2025-04-15 21:39:43.892866 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.hallii
## 2025-04-15 21:39:44.276791 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.faecis
## 2025-04-15 21:39:44.676488 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.clara
## 2025-04-15 21:39:45.083255 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.siraeum
## 2025-04-15 21:39:45.479654 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.merdae
## 2025-04-15 21:39:45.863377 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.unclassified
## 2025-04-15 21:39:46.136345 INFO::Creating boxplot for categorical data, dysbiosisCD vs Collinsella.aerofaciens
## 2025-04-15 21:39:46.462957 INFO::Creating boxplot for categorical data, dysbiosisCD vs Odoribacter.splanchnicus
## 2025-04-15 21:39:46.828015 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.clostridioforme
## 2025-04-15 21:39:47.141438 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.eggerthii
## 2025-04-15 21:39:47.40137 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.onderdonkii
## 2025-04-15 21:39:47.648964 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.ventriosum
## 2025-04-15 21:39:47.922627 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.lactaris
## 2025-04-15 21:39:48.230829 INFO::Creating boxplot for categorical data, dysbiosisCD vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 21:39:48.611531 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dialister.invisus
## 2025-04-15 21:39:49.037744 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.bromii
## 2025-04-15 21:39:49.392898 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parasutterella.excrementihominis
## 2025-04-15 21:39:49.77773 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.unclassified
## 2025-04-15 21:39:50.059222 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.torques
## 2025-04-15 21:39:50.306549 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprobacillus.unclassified
## 2025-04-15 21:39:50.572274 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.cellulosilyticus
## 2025-04-15 21:39:50.822954 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.intestinalis
## 2025-04-15 21:39:51.083567 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.unclassified
## 2025-04-15 21:39:51.450414 INFO::Creating boxplot for categorical data, dysbiosisCD vs Acidaminococcus.unclassified
## 2025-04-15 21:39:51.868761 INFO::Creating boxplot for categorical data, dysbiosisCD vs Barnesiella.intestinihominis
## 2025-04-15 21:39:52.173678 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.massiliensis
## 2025-04-15 21:39:52.442259 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.sp.3.1.31
## 2025-04-15 21:39:52.778773 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.salyersiae
## 2025-04-15 21:39:53.065226 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroidales.bacterium.ph8
## 2025-04-15 21:39:53.335731 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.citroniae
## 2025-04-15 21:39:53.740516 INFO::Creating boxplot for categorical data, dysbiosisCD vs Flavonifractor.plautii
## 2025-04-15 21:39:54.202544 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.goldsteinii
## 2025-04-15 21:39:54.517323 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bifidobacterium.longum
## 2025-04-15 21:39:54.807997 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-15 21:39:58.468492 INFO::Plotting data for metadata number 2, dysbiosisUC
## 2025-04-15 21:39:58.471572 INFO::Creating boxplot for categorical data, dysbiosisUC vs Subdoligranulum.unclassified
## 2025-04-15 21:39:58.72613 INFO::Creating boxplot for categorical data, dysbiosisUC vs Faecalibacterium.prausnitzii
## 2025-04-15 21:39:59.049052 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.caccae
## 2025-04-15 21:39:59.355215 INFO::Creating boxplot for categorical data, dysbiosisUC vs Oscillibacter.unclassified
## 2025-04-15 21:39:59.731315 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.uniformis
## 2025-04-15 21:39:59.990819 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.siraeum
## 2025-04-15 21:40:00.334697 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.ovatus
## 2025-04-15 21:40:00.58125 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.fragilis
## 2025-04-15 21:40:00.872244 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.shahii
## 2025-04-15 21:40:01.177044 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.rectale
## 2025-04-15 21:40:01.538984 INFO::Creating boxplot for categorical data, dysbiosisUC vs Roseburia.hominis
## 2025-04-15 21:40:01.9681 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.putredinis
## 2025-04-15 21:40:02.39983 INFO::Creating boxplot for categorical data, dysbiosisUC vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 21:40:02.823225 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.hallii
## 2025-04-15 21:40:03.220732 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.xylanisolvens
## 2025-04-15 21:40:03.565119 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.stercoris
## 2025-04-15 21:40:03.860198 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.finegoldii
## 2025-04-15 21:40:04.133029 INFO::Creating boxplot for categorical data, dysbiosisUC vs Barnesiella.intestinihominis
## 2025-04-15 21:40:04.459341 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.leptum
## 2025-04-15 21:40:04.851558 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.gnavus
## 2025-04-15 21:40:05.244983 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.onderdonkii
## 2025-04-15 21:40:05.671801 INFO::Creating boxplot for categorical data, dysbiosisUC vs Flavonifractor.plautii
## 2025-04-15 21:40:06.050098 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.merdae
## 2025-04-15 21:40:06.363086 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.cellulosilyticus
## 2025-04-15 21:40:06.635753 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.longum
## 2025-04-15 21:40:06.884831 INFO::Creating boxplot for categorical data, dysbiosisUC vs Klebsiella.pneumoniae
## 2025-04-15 21:40:07.183888 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.citroniae
## 2025-04-15 21:40:07.452316 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.ventriosum
## 2025-04-15 21:40:07.913629 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.distasonis
## 2025-04-15 21:40:08.281955 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.goldsteinii
## 2025-04-15 21:40:08.684592 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.torques
## 2025-04-15 21:40:09.066703 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroidales.bacterium.ph8
## 2025-04-15 21:40:09.482852 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.obeum
## 2025-04-15 21:40:09.869441 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.bifidum
## 2025-04-15 21:40:10.230588 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.adolescentis
## 2025-04-15 21:40:10.4922 INFO::Creating boxplot for categorical data, dysbiosisUC vs Collinsella.aerofaciens
## 2025-04-15 21:40:10.796337 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.hathewayi
## 2025-04-15 21:40:11.046758 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bilophila.unclassified
## 2025-04-15 21:40:11.363211 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.eligens
## 2025-04-15 21:40:11.769375 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.vulgatus
## 2025-04-15 21:40:12.074597 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.bolteae
## 2025-04-15 21:40:12.382395 INFO::Creating boxplot for categorical data, dysbiosisUC vs Dialister.invisus
## 2025-04-15 21:40:12.762168 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.lactaris
## 2025-04-15 21:40:13.108345 INFO::Creating boxplot for categorical data, dysbiosisUC vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 21:40:17.37724 INFO::Plotting data for metadata number 3, dysbiosisnonIBD
## 2025-04-15 21:40:17.380467 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Faecalibacterium.prausnitzii
## 2025-04-15 21:40:17.62876 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.rectale
## 2025-04-15 21:40:17.914664 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.sp.3.1.31
## 2025-04-15 21:40:18.183477 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.hominis
## 2025-04-15 21:40:18.460881 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Subdoligranulum.unclassified
## 2025-04-15 21:40:18.730244 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 21:40:19.026897 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.torques
## 2025-04-15 21:40:19.302682 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Clostridium.leptum
## 2025-04-15 21:40:19.610924 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Odoribacter.splanchnicus
## 2025-04-15 21:40:19.903908 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Escherichia.coli
## 2025-04-15 21:40:20.313728 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.obeum
## 2025-04-15 21:40:20.637289 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bilophila.unclassified
## 2025-04-15 21:40:20.912092 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.uniformis
## 2025-04-15 21:40:21.186606 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.eligens
## 2025-04-15 21:40:21.448946 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Klebsiella.pneumoniae
## 2025-04-15 21:40:21.759713 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.bromii
## 2025-04-15 21:40:22.00787 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.vulgatus
## 2025-04-15 21:40:22.337786 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs C2likevirus.unclassified
## 2025-04-15 21:40:22.695154 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bifidobacterium.adolescentis
## 2025-04-15 21:40:23.070062 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.finegoldii
## 2025-04-15 21:40:23.418231 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.inulinivorans
## 2025-04-15 21:40:23.799678 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.onderdonkii
## 2025-04-15 21:40:24.199294 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.unclassified
## 2025-04-15 21:40:24.621494 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.hallii
## 2025-04-15 21:40:25.053798 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.intestinalis
## 2025-04-15 21:40:25.479889 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Prevotella.copri
## 2025-04-15 21:40:25.908818 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.dorei
## 2025-04-15 21:40:26.219073 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.fragilis
## 2025-04-15 21:40:26.552726 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.shahii
## 2025-04-15 21:40:30.478895 INFO::Plotting data for metadata number 4, antibiotics
## 2025-04-15 21:40:30.481847 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.inulinivorans
## 2025-04-15 21:40:30.70711 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.hominis
## 2025-04-15 21:40:31.020807 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.rectale
## 2025-04-15 21:40:31.402001 INFO::Creating boxplot for categorical data, antibiotics vs Dialister.invisus
## 2025-04-15 21:40:31.782155 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.intestinalis
## 2025-04-15 21:40:32.142587 INFO::Creating boxplot for categorical data, antibiotics vs Dorea.longicatena
## 2025-04-15 21:40:32.540788 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.callidus
## 2025-04-15 21:40:32.932486 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.bromii
## 2025-04-15 21:40:33.347611 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.obeum
## 2025-04-15 21:40:33.649453 INFO::Creating boxplot for categorical data, antibiotics vs Klebsiella.pneumoniae
## 2025-04-15 21:40:33.934205 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.adolescentis
## 2025-04-15 21:40:34.252173 INFO::Creating boxplot for categorical data, antibiotics vs Faecalibacterium.prausnitzii
## 2025-04-15 21:40:34.501355 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.hallii
## 2025-04-15 21:40:34.772497 INFO::Creating boxplot for categorical data, antibiotics vs Bilophila.unclassified
## 2025-04-15 21:40:35.034587 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.leptum
## 2025-04-15 21:40:35.336013 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 21:40:35.676558 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.finegoldii
## 2025-04-15 21:40:36.004976 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.sp.3.1.31
## 2025-04-15 21:40:36.271526 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.fragilis
## 2025-04-15 21:40:36.556548 INFO::Creating boxplot for categorical data, antibiotics vs Alistipes.onderdonkii
## 2025-04-15 21:40:36.808541 INFO::Creating boxplot for categorical data, antibiotics vs Sutterella.wadsworthensis
## 2025-04-15 21:40:37.094743 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.eligens
## 2025-04-15 21:40:37.423496 INFO::Creating boxplot for categorical data, antibiotics vs Collinsella.aerofaciens
## 2025-04-15 21:40:37.712045 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.thetaiotaomicron
## 2025-04-15 21:40:37.959534 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.eggerthii
## 2025-04-15 21:40:38.275864 INFO::Creating boxplot for categorical data, antibiotics vs Haemophilus.parainfluenzae
## 2025-04-15 21:40:38.546681 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.pseudocatenulatum
## 2025-04-15 21:40:38.822469 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.torques
## 2025-04-15 21:40:39.066465 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.ventriosum
## 2025-04-15 21:40:39.356216 INFO::Creating boxplot for categorical data, antibiotics vs Parasutterella.excrementihominis
## 2025-04-15 21:40:39.608824 INFO::Creating boxplot for categorical data, antibiotics vs Peptostreptococcaceae.noname.unclassified
## 2025-04-15 21:40:39.875789 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.dispar
## 2025-04-15 21:40:40.133707 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.atypica
## 2025-04-15 21:40:40.413091 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroidales.bacterium.ph8
## 2025-04-15 21:40:40.664584 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.nexile
## 2025-04-15 21:40:40.930101 INFO::Creating boxplot for categorical data, antibiotics vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 21:40:41.17229 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-15 21:40:41.443129 INFO::Creating boxplot for categorical data, antibiotics vs Akkermansia.muciniphila
## 2025-04-15 21:40:41.686462 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.citroniae
## 2025-04-15 21:40:41.950895 INFO::Creating boxplot for categorical data, antibiotics vs Odoribacter.splanchnicus
## 2025-04-15 21:40:45.878412 INFO::Plotting data for metadata number 5, age
## 2025-04-15 21:40:45.881315 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-15 21:40:46.242806 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-15 21:40:46.81673 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-15 21:40:47.257311 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-15 21:40:47.651348 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-15 21:40:48.051826 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-15 21:40:48.383265 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-15 21:40:49.09905 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-15 21:40:49.340248 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-15 21:40:49.717127 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-15 21:40:50.095886 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-15 21:40:50.46161 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-15 21:40:50.695992 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-15 21:40:50.940989 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-15 21:40:51.176198 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-15 21:40:51.407367 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-15 21:40:51.687964 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-15 21:40:51.935015 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-15 21:40:52.186985 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-15 21:40:52.450904 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-15 21:40:52.841385 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-15 21:40:53.226375 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-15 21:40:57.396257 INFO::Plotting data for metadata number 6, diagnosis
## 2025-04-15 21:40:57.399058 INFO::Creating boxplot for categorical data, diagnosis vs Bifidobacterium.adolescentis
## 2025-04-15 21:40:57.622131 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-15 21:40:57.860609 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-15 21:40:58.128671 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-15 21:40:58.380091 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-15 21:40:58.645472 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.clostridioforme
## 2025-04-15 21:40:58.997964 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-15 21:40:59.352634 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-15 21:40:59.641171 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-15 21:40:59.893617 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-15 21:41:00.173026 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.inulinivorans
## 2025-04-15 21:41:00.549203 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-15 21:41:00.960156 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-15 21:41:01.232935 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-15 21:41:01.579684 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.goldsteinii
## 2025-04-15 21:41:01.849914 INFO::Creating boxplot for categorical data, diagnosis vs Bilophila.unclassified
## 2025-04-15 21:41:02.13334 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-15 21:41:02.391569 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-15 21:41:02.77984 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-15 21:41:03.140153 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-15 21:41:03.516419 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.ventriosum
## 2025-04-15 21:41:03.794003 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-15 21:41:04.053307 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-15 21:41:04.337026 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-15 21:41:04.582726 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-15 21:41:04.849482 INFO::Creating boxplot for categorical data, diagnosis vs Subdoligranulum.unclassified
## 2025-04-15 21:41:05.113757 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-15 21:41:05.405455 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-15 21:41:05.727824 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.unclassified
## 2025-04-15 21:41:05.995182 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.lactaris
## 2025-04-15 21:41:06.246307 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-15 21:41:06.54783 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.gnavus
## 2025-04-15 21:41:06.960774 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.fragilis
## 2025-04-15 21:41:07.381781 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-15 21:41:07.710642 INFO::Creating boxplot for categorical data, diagnosis vs Odoribacter.splanchnicus
## 2025-04-15 21:41:07.989683 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.distasonis
## 2025-04-15 21:41:08.267583 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-15 21:41:08.547767 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.finegoldii
## 2025-04-15 21:41:08.839165 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-15 21:41:09.083102 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-15 21:41:09.339771 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-15 21:41:09.585312 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-15 21:41:09.993235 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 RC (2025-04-04 r88126 ucrt)
## Platform: x86_64-w64-mingw32/x64
## Running under: Windows Server 2022 x64 (build 20348)
##
## Matrix products: default
## LAPACK version 3.12.1
##
## locale:
## [1] LC_COLLATE=C
## [2] LC_CTYPE=English_United States.utf8
## [3] LC_MONETARY=English_United States.utf8
## [4] LC_NUMERIC=C
## [5] LC_TIME=English_United States.utf8
##
## time zone: America/New_York
## tzcode source: internal
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] Maaslin2_1.22.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.10
## [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.6 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?