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 18:31:25.685489 INFO::Writing function arguments to log file
## 2025-04-15 18:31:25.712605 INFO::Verifying options selected are valid
## 2025-04-15 18:31:25.755072 INFO::Determining format of input files
## 2025-04-15 18:31:25.766956 INFO::Input format is data samples as rows and metadata samples as rows
## 2025-04-15 18:31:25.77446 INFO::Formula for random effects: expr ~ (1 | site) + (1 | subject)
## 2025-04-15 18:31:25.776575 INFO::Formula for fixed effects: expr ~ diagnosis + dysbiosisnonIBD + dysbiosisUC + dysbiosisCD + antibiotics + age
## 2025-04-15 18:31:25.779653 INFO::Filter data based on min abundance and min prevalence
## 2025-04-15 18:31:25.780924 INFO::Total samples in data: 1595
## 2025-04-15 18:31:25.782221 INFO::Min samples required with min abundance for a feature not to be filtered: 159.500000
## 2025-04-15 18:31:25.787506 INFO::Total filtered features: 0
## 2025-04-15 18:31:25.788683 INFO::Filtered feature names from abundance and prevalence filtering:
## 2025-04-15 18:31:25.79771 INFO::Total filtered features with variance filtering: 0
## 2025-04-15 18:31:25.798902 INFO::Filtered feature names from variance filtering:
## 2025-04-15 18:31:25.799856 INFO::Running selected normalization method: TSS
## 2025-04-15 18:31:27.038003 INFO::Bypass z-score application to metadata
## 2025-04-15 18:31:27.039557 INFO::Running selected transform method: LOG
## 2025-04-15 18:31:27.064489 INFO::Running selected analysis method: LM
## 2025-04-15 18:31:27.495778 INFO::Fitting model to feature number 1, Bifidobacterium.adolescentis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:27.941378 INFO::Fitting model to feature number 2, Bifidobacterium.bifidum
## 2025-04-15 18:31:28.122751 INFO::Fitting model to feature number 3, Bifidobacterium.longum
## 2025-04-15 18:31:28.388498 INFO::Fitting model to feature number 4, Bifidobacterium.pseudocatenulatum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:28.784625 INFO::Fitting model to feature number 5, Collinsella.aerofaciens
## 2025-04-15 18:31:28.965859 INFO::Fitting model to feature number 6, Bacteroides.caccae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:29.147242 INFO::Fitting model to feature number 7, Bacteroides.cellulosilyticus
## 2025-04-15 18:31:29.330039 INFO::Fitting model to feature number 8, Bacteroides.dorei
## 2025-04-15 18:31:29.493942 INFO::Fitting model to feature number 9, Bacteroides.eggerthii
## 2025-04-15 18:31:29.663655 INFO::Fitting model to feature number 10, Bacteroides.faecis
## 2025-04-15 18:31:29.826276 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 18:31:29.985951 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 18:31:30.144446 INFO::Fitting model to feature number 12, Bacteroides.fragilis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:30.30908 INFO::Fitting model to feature number 13, Bacteroides.intestinalis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:30.50412 INFO::Fitting model to feature number 14, Bacteroides.massiliensis
## 2025-04-15 18:31:30.653004 INFO::Fitting model to feature number 15, Bacteroides.ovatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:30.810115 INFO::Fitting model to feature number 16, Bacteroides.salyersiae
## 2025-04-15 18:31:30.965316 INFO::Fitting model to feature number 17, Bacteroides.stercoris
## 2025-04-15 18:31:31.128865 INFO::Fitting model to feature number 18, Bacteroides.thetaiotaomicron
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:31.27482 INFO::Fitting model to feature number 19, Bacteroides.uniformis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:31.432552 INFO::Fitting model to feature number 20, Bacteroides.vulgatus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:31.623941 INFO::Fitting model to feature number 21, Bacteroides.xylanisolvens
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:31.795855 INFO::Fitting model to feature number 22, Bacteroidales.bacterium.ph8
## 2025-04-15 18:31:31.960315 INFO::Fitting model to feature number 23, Barnesiella.intestinihominis
## 2025-04-15 18:31:32.137962 INFO::Fitting model to feature number 24, Coprobacter.fastidiosus
## 2025-04-15 18:31:32.298686 INFO::Fitting model to feature number 25, Odoribacter.splanchnicus
## 2025-04-15 18:31:32.456814 INFO::Fitting model to feature number 26, Parabacteroides.distasonis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:32.622554 INFO::Fitting model to feature number 27, Parabacteroides.goldsteinii
## 2025-04-15 18:31:32.793793 INFO::Fitting model to feature number 28, Parabacteroides.merdae
## 2025-04-15 18:31:32.949246 INFO::Fitting model to feature number 29, Parabacteroides.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:33.094452 INFO::Fitting model to feature number 30, Paraprevotella.clara
## 2025-04-15 18:31:33.254462 INFO::Fitting model to feature number 31, Paraprevotella.unclassified
## 2025-04-15 18:31:33.42201 INFO::Fitting model to feature number 32, Prevotella.copri
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:33.591324 INFO::Fitting model to feature number 33, Alistipes.finegoldii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:33.747642 INFO::Fitting model to feature number 34, Alistipes.onderdonkii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:33.923488 INFO::Fitting model to feature number 35, Alistipes.putredinis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:34.072828 INFO::Fitting model to feature number 36, Alistipes.shahii
## 2025-04-15 18:31:34.236487 INFO::Fitting model to feature number 37, Alistipes.unclassified
## 2025-04-15 18:31:34.40325 INFO::Fitting model to feature number 38, Streptococcus.salivarius
## 2025-04-15 18:31:34.562618 INFO::Fitting model to feature number 39, Clostridium.bolteae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:34.7375 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 18:31:34.887699 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 18:31:35.06689 INFO::Fitting model to feature number 41, Clostridium.clostridioforme
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:35.244226 INFO::Fitting model to feature number 42, Clostridium.hathewayi
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:35.40775 INFO::Fitting model to feature number 43, Clostridium.leptum
## 2025-04-15 18:31:35.59272 INFO::Fitting model to feature number 44, Clostridium.nexile
## 2025-04-15 18:31:35.742421 INFO::Fitting model to feature number 45, Clostridium.symbiosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:35.901336 INFO::Fitting model to feature number 46, Flavonifractor.plautii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:36.058751 INFO::Fitting model to feature number 47, Eubacterium.eligens
## 2025-04-15 18:31:36.219252 INFO::Fitting model to feature number 48, Eubacterium.hallii
## 2025-04-15 18:31:36.368334 INFO::Fitting model to feature number 49, Eubacterium.rectale
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:36.544213 INFO::Fitting model to feature number 50, Eubacterium.siraeum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:36.683629 INFO::Fitting model to feature number 51, Eubacterium.sp.3.1.31
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:36.849427 INFO::Fitting model to feature number 52, Eubacterium.ventriosum
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:37.000802 INFO::Fitting model to feature number 53, Ruminococcus.gnavus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:37.156029 INFO::Fitting model to feature number 54, Ruminococcus.obeum
## 2025-04-15 18:31:37.324437 INFO::Fitting model to feature number 55, Ruminococcus.torques
## 2025-04-15 18:31:37.476744 INFO::Fitting model to feature number 56, Coprococcus.comes
## 2025-04-15 18:31:37.632345 INFO::Fitting model to feature number 57, Dorea.longicatena
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:37.804685 INFO::Fitting model to feature number 58, Lachnospiraceae.bacterium.1.1.57FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:37.973884 INFO::Fitting model to feature number 59, Lachnospiraceae.bacterium.3.1.46FAA
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:38.128869 INFO::Fitting model to feature number 60, Roseburia.hominis
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:38.292293 INFO::Fitting model to feature number 61, Roseburia.intestinalis
## 2025-04-15 18:31:38.437718 INFO::Fitting model to feature number 62, Roseburia.inulinivorans
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:38.591436 INFO::Fitting model to feature number 63, Roseburia.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:38.983698 INFO::Fitting model to feature number 64, Oscillibacter.unclassified
## 2025-04-15 18:31:39.150649 INFO::Fitting model to feature number 65, Peptostreptococcaceae.noname.unclassified
## 2025-04-15 18:31:39.307514 INFO::Fitting model to feature number 66, Faecalibacterium.prausnitzii
## 2025-04-15 18:31:39.46862 INFO::Fitting model to feature number 67, Ruminococcus.bromii
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:39.61807 INFO::Fitting model to feature number 68, Ruminococcus.callidus
## 2025-04-15 18:31:39.756221 INFO::Fitting model to feature number 69, Ruminococcus.lactaris
## 2025-04-15 18:31:39.912432 INFO::Fitting model to feature number 70, Subdoligranulum.unclassified
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:40.073993 INFO::Fitting model to feature number 71, Coprobacillus.unclassified
## 2025-04-15 18:31:40.234568 INFO::Fitting model to feature number 72, Acidaminococcus.unclassified
## 2025-04-15 18:31:40.374654 INFO::Fitting model to feature number 73, Dialister.invisus
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:40.52288 INFO::Fitting model to feature number 74, Veillonella.atypica
## 2025-04-15 18:31:40.669154 INFO::Fitting model to feature number 75, Veillonella.dispar
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:40.80768 INFO::Fitting model to feature number 76, Veillonella.parvula
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:40.952208 INFO::Fitting model to feature number 77, Veillonella.unclassified
## 2025-04-15 18:31:41.101057 INFO::Fitting model to feature number 78, Burkholderiales.bacterium.1.1.47
## 2025-04-15 18:31:41.258149 INFO::Fitting model to feature number 79, Parasutterella.excrementihominis
## 2025-04-15 18:31:41.647093 INFO::Fitting model to feature number 80, Sutterella.wadsworthensis
## 2025-04-15 18:31:41.815984 INFO::Fitting model to feature number 81, Bilophila.unclassified
## 2025-04-15 18:31:41.986057 INFO::Fitting model to feature number 82, Escherichia.coli
## 2025-04-15 18:31:42.146583 INFO::Fitting model to feature number 83, Escherichia.unclassified
## 2025-04-15 18:31:42.276154 INFO::Fitting model to feature number 84, Klebsiella.pneumoniae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:42.417598 INFO::Fitting model to feature number 85, Haemophilus.parainfluenzae
## boundary (singular) fit: see help('isSingular')
## 2025-04-15 18:31:42.574732 INFO::Fitting model to feature number 86, Akkermansia.muciniphila
## 2025-04-15 18:31:42.710682 INFO::Fitting model to feature number 87, C2likevirus.unclassified
## 2025-04-15 18:31:42.902228 INFO::Counting total values for each feature
## 2025-04-15 18:31:42.946329 INFO::Writing filtered data to file demo_output/features/filtered_data.tsv
## 2025-04-15 18:31:43.064329 INFO::Writing filtered, normalized data to file demo_output/features/filtered_data_norm.tsv
## 2025-04-15 18:31:43.20532 INFO::Writing filtered, normalized, transformed data to file demo_output/features/filtered_data_norm_transformed.tsv
## 2025-04-15 18:31:43.399437 INFO::Writing residuals to file demo_output/fits/residuals.rds
## 2025-04-15 18:31:43.460645 INFO::Writing fitted values to file demo_output/fits/fitted.rds
## 2025-04-15 18:31:43.493215 INFO::Writing extracted random effects to file demo_output/fits/ranef.rds
## 2025-04-15 18:31:43.500787 INFO::Writing all results to file (ordered by increasing q-values): demo_output/all_results.tsv
## 2025-04-15 18:31:43.508684 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 18:31:43.511973 INFO::Writing heatmap of significant results to file: demo_output/heatmap.pdf
## 2025-04-15 18:31:43.685502 INFO::Writing association plots (one for each significant association) to output folder: demo_output
## 2025-04-15 18:31:43.693068 INFO::Plotting associations from most to least significant, grouped by metadata
## 2025-04-15 18:31:43.694535 INFO::Plotting data for metadata number 1, dysbiosisCD
## 2025-04-15 18:31:43.697452 INFO::Creating boxplot for categorical data, dysbiosisCD vs Faecalibacterium.prausnitzii
## 2025-04-15 18:31:44.099918 INFO::Creating boxplot for categorical data, dysbiosisCD vs Subdoligranulum.unclassified
## 2025-04-15 18:31:44.423742 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.uniformis
## 2025-04-15 18:31:44.693473 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.rectale
## 2025-04-15 18:31:44.98649 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.vulgatus
## 2025-04-15 18:31:45.279279 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.ovatus
## 2025-04-15 18:31:45.578957 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.obeum
## 2025-04-15 18:31:45.8712 INFO::Creating boxplot for categorical data, dysbiosisCD vs Oscillibacter.unclassified
## 2025-04-15 18:31:46.154531 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.inulinivorans
## 2025-04-15 18:31:46.440619 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.hominis
## 2025-04-15 18:31:46.728389 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.thetaiotaomicron
## 2025-04-15 18:31:46.999794 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.putredinis
## 2025-04-15 18:31:47.290339 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.distasonis
## 2025-04-15 18:31:47.566448 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.dorei
## 2025-04-15 18:31:47.847027 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.shahii
## 2025-04-15 18:31:48.123177 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.xylanisolvens
## 2025-04-15 18:31:48.416606 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.leptum
## 2025-04-15 18:31:48.718389 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dorea.longicatena
## 2025-04-15 18:31:49.017682 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.caccae
## 2025-04-15 18:31:49.331407 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 18:31:49.624102 INFO::Creating boxplot for categorical data, dysbiosisCD vs Escherichia.coli
## 2025-04-15 18:31:49.917479 INFO::Creating boxplot for categorical data, dysbiosisCD vs Klebsiella.pneumoniae
## 2025-04-15 18:31:50.215843 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bilophila.unclassified
## 2025-04-15 18:31:50.494167 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.finegoldii
## 2025-04-15 18:31:50.771718 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.eligens
## 2025-04-15 18:31:51.10161 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.stercoris
## 2025-04-15 18:31:51.401087 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprococcus.comes
## 2025-04-15 18:31:51.722868 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.fragilis
## 2025-04-15 18:31:52.011598 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.finegoldii
## 2025-04-15 18:31:52.298271 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.hallii
## 2025-04-15 18:31:52.553078 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.faecis
## 2025-04-15 18:31:52.858137 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.clara
## 2025-04-15 18:31:53.145838 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.siraeum
## 2025-04-15 18:31:53.426025 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.merdae
## 2025-04-15 18:31:53.707515 INFO::Creating boxplot for categorical data, dysbiosisCD vs Paraprevotella.unclassified
## 2025-04-15 18:31:54.009995 INFO::Creating boxplot for categorical data, dysbiosisCD vs Collinsella.aerofaciens
## 2025-04-15 18:31:54.287484 INFO::Creating boxplot for categorical data, dysbiosisCD vs Odoribacter.splanchnicus
## 2025-04-15 18:31:54.56749 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.clostridioforme
## 2025-04-15 18:31:54.838597 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.eggerthii
## 2025-04-15 18:31:55.117799 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.onderdonkii
## 2025-04-15 18:31:55.414477 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.ventriosum
## 2025-04-15 18:31:55.710749 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.lactaris
## 2025-04-15 18:31:56.009913 INFO::Creating boxplot for categorical data, dysbiosisCD vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 18:31:56.29936 INFO::Creating boxplot for categorical data, dysbiosisCD vs Dialister.invisus
## 2025-04-15 18:31:56.592964 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.bromii
## 2025-04-15 18:31:56.890811 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parasutterella.excrementihominis
## 2025-04-15 18:31:57.196436 INFO::Creating boxplot for categorical data, dysbiosisCD vs Alistipes.unclassified
## 2025-04-15 18:31:57.483721 INFO::Creating boxplot for categorical data, dysbiosisCD vs Ruminococcus.torques
## 2025-04-15 18:31:57.762539 INFO::Creating boxplot for categorical data, dysbiosisCD vs Coprobacillus.unclassified
## 2025-04-15 18:31:58.063589 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.cellulosilyticus
## 2025-04-15 18:31:58.343056 INFO::Creating boxplot for categorical data, dysbiosisCD vs Roseburia.intestinalis
## 2025-04-15 18:31:58.630013 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.unclassified
## 2025-04-15 18:31:58.921827 INFO::Creating boxplot for categorical data, dysbiosisCD vs Acidaminococcus.unclassified
## 2025-04-15 18:31:59.213072 INFO::Creating boxplot for categorical data, dysbiosisCD vs Barnesiella.intestinihominis
## 2025-04-15 18:31:59.496817 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.massiliensis
## 2025-04-15 18:31:59.775287 INFO::Creating boxplot for categorical data, dysbiosisCD vs Eubacterium.sp.3.1.31
## 2025-04-15 18:32:00.030125 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroides.salyersiae
## 2025-04-15 18:32:00.286123 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bacteroidales.bacterium.ph8
## 2025-04-15 18:32:00.553222 INFO::Creating boxplot for categorical data, dysbiosisCD vs Clostridium.citroniae
## 2025-04-15 18:32:00.811313 INFO::Creating boxplot for categorical data, dysbiosisCD vs Flavonifractor.plautii
## 2025-04-15 18:32:01.100712 INFO::Creating boxplot for categorical data, dysbiosisCD vs Parabacteroides.goldsteinii
## 2025-04-15 18:32:01.388743 INFO::Creating boxplot for categorical data, dysbiosisCD vs Bifidobacterium.longum
## 2025-04-15 18:32:01.684093 INFO::Creating boxplot for categorical data, dysbiosisCD vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-15 18:32:04.845008 INFO::Plotting data for metadata number 2, dysbiosisUC
## 2025-04-15 18:32:04.847797 INFO::Creating boxplot for categorical data, dysbiosisUC vs Subdoligranulum.unclassified
## 2025-04-15 18:32:05.120193 INFO::Creating boxplot for categorical data, dysbiosisUC vs Faecalibacterium.prausnitzii
## 2025-04-15 18:32:05.424592 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.caccae
## 2025-04-15 18:32:05.796045 INFO::Creating boxplot for categorical data, dysbiosisUC vs Oscillibacter.unclassified
## 2025-04-15 18:32:06.096785 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.uniformis
## 2025-04-15 18:32:06.401603 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.siraeum
## 2025-04-15 18:32:06.729298 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.ovatus
## 2025-04-15 18:32:07.086665 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.fragilis
## 2025-04-15 18:32:07.446261 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.shahii
## 2025-04-15 18:32:07.821717 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.rectale
## 2025-04-15 18:32:08.164348 INFO::Creating boxplot for categorical data, dysbiosisUC vs Roseburia.hominis
## 2025-04-15 18:32:08.545012 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.putredinis
## 2025-04-15 18:32:08.885265 INFO::Creating boxplot for categorical data, dysbiosisUC vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 18:32:09.219253 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.hallii
## 2025-04-15 18:32:09.536212 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.xylanisolvens
## 2025-04-15 18:32:09.866664 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.stercoris
## 2025-04-15 18:32:10.213524 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.finegoldii
## 2025-04-15 18:32:10.524729 INFO::Creating boxplot for categorical data, dysbiosisUC vs Barnesiella.intestinihominis
## 2025-04-15 18:32:10.846971 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.leptum
## 2025-04-15 18:32:11.152394 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.gnavus
## 2025-04-15 18:32:11.476199 INFO::Creating boxplot for categorical data, dysbiosisUC vs Alistipes.onderdonkii
## 2025-04-15 18:32:11.816041 INFO::Creating boxplot for categorical data, dysbiosisUC vs Flavonifractor.plautii
## 2025-04-15 18:32:12.160158 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.merdae
## 2025-04-15 18:32:12.451978 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.cellulosilyticus
## 2025-04-15 18:32:12.800919 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.longum
## 2025-04-15 18:32:13.152848 INFO::Creating boxplot for categorical data, dysbiosisUC vs Klebsiella.pneumoniae
## 2025-04-15 18:32:13.4648 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.citroniae
## 2025-04-15 18:32:13.797372 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.ventriosum
## 2025-04-15 18:32:14.101209 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.distasonis
## 2025-04-15 18:32:14.419863 INFO::Creating boxplot for categorical data, dysbiosisUC vs Parabacteroides.goldsteinii
## 2025-04-15 18:32:14.738914 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.torques
## 2025-04-15 18:32:15.067783 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroidales.bacterium.ph8
## 2025-04-15 18:32:15.40084 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.obeum
## 2025-04-15 18:32:15.723187 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.bifidum
## 2025-04-15 18:32:16.082325 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bifidobacterium.adolescentis
## 2025-04-15 18:32:16.389681 INFO::Creating boxplot for categorical data, dysbiosisUC vs Collinsella.aerofaciens
## 2025-04-15 18:32:16.903268 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.hathewayi
## 2025-04-15 18:32:17.175806 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bilophila.unclassified
## 2025-04-15 18:32:17.455574 INFO::Creating boxplot for categorical data, dysbiosisUC vs Eubacterium.eligens
## 2025-04-15 18:32:17.7505 INFO::Creating boxplot for categorical data, dysbiosisUC vs Bacteroides.vulgatus
## 2025-04-15 18:32:18.037924 INFO::Creating boxplot for categorical data, dysbiosisUC vs Clostridium.bolteae
## 2025-04-15 18:32:18.344502 INFO::Creating boxplot for categorical data, dysbiosisUC vs Dialister.invisus
## 2025-04-15 18:32:18.651484 INFO::Creating boxplot for categorical data, dysbiosisUC vs Ruminococcus.lactaris
## 2025-04-15 18:32:18.94517 INFO::Creating boxplot for categorical data, dysbiosisUC vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 18:32:22.128025 INFO::Plotting data for metadata number 3, dysbiosisnonIBD
## 2025-04-15 18:32:22.131066 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Faecalibacterium.prausnitzii
## 2025-04-15 18:32:22.38838 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.rectale
## 2025-04-15 18:32:22.704245 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.sp.3.1.31
## 2025-04-15 18:32:22.996453 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.hominis
## 2025-04-15 18:32:23.282206 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Subdoligranulum.unclassified
## 2025-04-15 18:32:23.574303 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 18:32:23.872389 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.torques
## 2025-04-15 18:32:24.1615 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Clostridium.leptum
## 2025-04-15 18:32:24.466449 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Odoribacter.splanchnicus
## 2025-04-15 18:32:24.746663 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Escherichia.coli
## 2025-04-15 18:32:25.058745 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.obeum
## 2025-04-15 18:32:25.35346 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bilophila.unclassified
## 2025-04-15 18:32:25.639615 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.uniformis
## 2025-04-15 18:32:25.924288 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.eligens
## 2025-04-15 18:32:26.220768 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Klebsiella.pneumoniae
## 2025-04-15 18:32:26.50856 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Ruminococcus.bromii
## 2025-04-15 18:32:26.780065 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.vulgatus
## 2025-04-15 18:32:27.071648 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs C2likevirus.unclassified
## 2025-04-15 18:32:27.369988 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bifidobacterium.adolescentis
## 2025-04-15 18:32:27.642701 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.finegoldii
## 2025-04-15 18:32:27.934065 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.inulinivorans
## 2025-04-15 18:32:28.21402 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.onderdonkii
## 2025-04-15 18:32:28.547394 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.unclassified
## 2025-04-15 18:32:28.85904 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Eubacterium.hallii
## 2025-04-15 18:32:29.181953 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Roseburia.intestinalis
## 2025-04-15 18:32:29.480281 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Prevotella.copri
## 2025-04-15 18:32:29.779908 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.dorei
## 2025-04-15 18:32:30.046705 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Bacteroides.fragilis
## 2025-04-15 18:32:30.343197 INFO::Creating boxplot for categorical data, dysbiosisnonIBD vs Alistipes.shahii
## 2025-04-15 18:32:33.111326 INFO::Plotting data for metadata number 4, antibiotics
## 2025-04-15 18:32:33.113613 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.inulinivorans
## 2025-04-15 18:32:33.336078 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.hominis
## 2025-04-15 18:32:33.565992 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.rectale
## 2025-04-15 18:32:33.805037 INFO::Creating boxplot for categorical data, antibiotics vs Dialister.invisus
## 2025-04-15 18:32:34.06503 INFO::Creating boxplot for categorical data, antibiotics vs Roseburia.intestinalis
## 2025-04-15 18:32:34.346275 INFO::Creating boxplot for categorical data, antibiotics vs Dorea.longicatena
## 2025-04-15 18:32:34.598727 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.callidus
## 2025-04-15 18:32:34.855927 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.bromii
## 2025-04-15 18:32:35.077462 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.obeum
## 2025-04-15 18:32:35.334513 INFO::Creating boxplot for categorical data, antibiotics vs Klebsiella.pneumoniae
## 2025-04-15 18:32:35.652754 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.adolescentis
## 2025-04-15 18:32:35.919615 INFO::Creating boxplot for categorical data, antibiotics vs Faecalibacterium.prausnitzii
## 2025-04-15 18:32:36.161194 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.hallii
## 2025-04-15 18:32:36.463038 INFO::Creating boxplot for categorical data, antibiotics vs Bilophila.unclassified
## 2025-04-15 18:32:36.724015 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.leptum
## 2025-04-15 18:32:36.993288 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.3.1.46FAA
## 2025-04-15 18:32:37.279671 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.finegoldii
## 2025-04-15 18:32:37.564664 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.sp.3.1.31
## 2025-04-15 18:32:37.82076 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.fragilis
## 2025-04-15 18:32:38.098234 INFO::Creating boxplot for categorical data, antibiotics vs Alistipes.onderdonkii
## 2025-04-15 18:32:38.359938 INFO::Creating boxplot for categorical data, antibiotics vs Sutterella.wadsworthensis
## 2025-04-15 18:32:38.647122 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.eligens
## 2025-04-15 18:32:38.925226 INFO::Creating boxplot for categorical data, antibiotics vs Collinsella.aerofaciens
## 2025-04-15 18:32:39.198113 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.thetaiotaomicron
## 2025-04-15 18:32:39.522246 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroides.eggerthii
## 2025-04-15 18:32:39.779544 INFO::Creating boxplot for categorical data, antibiotics vs Haemophilus.parainfluenzae
## 2025-04-15 18:32:40.022932 INFO::Creating boxplot for categorical data, antibiotics vs Bifidobacterium.pseudocatenulatum
## 2025-04-15 18:32:40.25827 INFO::Creating boxplot for categorical data, antibiotics vs Ruminococcus.torques
## 2025-04-15 18:32:40.514608 INFO::Creating boxplot for categorical data, antibiotics vs Eubacterium.ventriosum
## 2025-04-15 18:32:40.798266 INFO::Creating boxplot for categorical data, antibiotics vs Parasutterella.excrementihominis
## 2025-04-15 18:32:41.07452 INFO::Creating boxplot for categorical data, antibiotics vs Peptostreptococcaceae.noname.unclassified
## 2025-04-15 18:32:41.356062 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.dispar
## 2025-04-15 18:32:41.62999 INFO::Creating boxplot for categorical data, antibiotics vs Veillonella.atypica
## 2025-04-15 18:32:41.905554 INFO::Creating boxplot for categorical data, antibiotics vs Bacteroidales.bacterium.ph8
## 2025-04-15 18:32:42.187207 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.nexile
## 2025-04-15 18:32:42.456709 INFO::Creating boxplot for categorical data, antibiotics vs Burkholderiales.bacterium.1.1.47
## 2025-04-15 18:32:42.736289 INFO::Creating boxplot for categorical data, antibiotics vs Lachnospiraceae.bacterium.1.1.57FAA
## 2025-04-15 18:32:43.007437 INFO::Creating boxplot for categorical data, antibiotics vs Akkermansia.muciniphila
## 2025-04-15 18:32:43.291652 INFO::Creating boxplot for categorical data, antibiotics vs Clostridium.citroniae
## 2025-04-15 18:32:43.555193 INFO::Creating boxplot for categorical data, antibiotics vs Odoribacter.splanchnicus
## 2025-04-15 18:32:47.012485 INFO::Plotting data for metadata number 5, age
## 2025-04-15 18:32:47.01518 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 18:32:47.389365 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 18:32:47.785154 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 18:32:48.063177 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 18:32:48.374134 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 18:32:48.667227 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 18:32:48.936561 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 18:32:49.244795 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 18:32:49.510786 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 18:32:49.76106 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 18:32:50.049494 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 18:32:50.322092 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 18:32:50.593052 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 18:32:50.940773 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 18:32:51.244782 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 18:32:51.550595 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 18:32:51.858579 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 18:32:52.145154 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 18:32:52.457653 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 18:32:52.795321 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 18:32:53.111114 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 18:32:53.428456 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 18:32:56.77818 INFO::Plotting data for metadata number 6, diagnosis
## 2025-04-15 18:32:56.781083 INFO::Creating boxplot for categorical data, diagnosis vs Bifidobacterium.adolescentis
## 2025-04-15 18:32:57.057485 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-15 18:32:57.35934 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-15 18:32:57.694946 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-15 18:32:58.004457 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-15 18:32:58.345575 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.clostridioforme
## 2025-04-15 18:32:58.647542 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-15 18:32:58.966414 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-15 18:32:59.292295 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-15 18:32:59.594254 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-15 18:32:59.932401 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.inulinivorans
## 2025-04-15 18:33:00.212603 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.bromii
## 2025-04-15 18:33:00.53885 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.shahii
## 2025-04-15 18:33:00.856443 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-15 18:33:01.144098 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.goldsteinii
## 2025-04-15 18:33:01.454343 INFO::Creating boxplot for categorical data, diagnosis vs Bilophila.unclassified
## 2025-04-15 18:33:01.790102 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.leptum
## 2025-04-15 18:33:02.076417 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-15 18:33:02.372789 INFO::Creating boxplot for categorical data, diagnosis vs Coprobacillus.unclassified
## 2025-04-15 18:33:02.661714 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-15 18:33:02.972041 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.ventriosum
## 2025-04-15 18:33:03.26801 INFO::Creating boxplot for categorical data, diagnosis vs Roseburia.hominis
## 2025-04-15 18:33:03.582593 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-15 18:33:03.890086 INFO::Creating boxplot for categorical data, diagnosis vs Akkermansia.muciniphila
## 2025-04-15 18:33:04.194819 INFO::Creating boxplot for categorical data, diagnosis vs Sutterella.wadsworthensis
## 2025-04-15 18:33:04.52191 INFO::Creating boxplot for categorical data, diagnosis vs Subdoligranulum.unclassified
## 2025-04-15 18:33:04.838084 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.symbiosum
## 2025-04-15 18:33:05.168614 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.onderdonkii
## 2025-04-15 18:33:05.479673 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.unclassified
## 2025-04-15 18:33:05.808604 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.lactaris
## 2025-04-15 18:33:06.146088 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-15 18:33:06.451206 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.gnavus
## 2025-04-15 18:33:06.775535 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.fragilis
## 2025-04-15 18:33:07.065438 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-15 18:33:07.399366 INFO::Creating boxplot for categorical data, diagnosis vs Odoribacter.splanchnicus
## 2025-04-15 18:33:07.711969 INFO::Creating boxplot for categorical data, diagnosis vs Parabacteroides.distasonis
## 2025-04-15 18:33:07.997408 INFO::Creating boxplot for categorical data, diagnosis vs Eubacterium.rectale
## 2025-04-15 18:33:08.313237 INFO::Creating boxplot for categorical data, diagnosis vs Bacteroides.finegoldii
## 2025-04-15 18:33:08.620425 INFO::Creating boxplot for categorical data, diagnosis vs Ruminococcus.callidus
## 2025-04-15 18:33:08.92748 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.finegoldii
## 2025-04-15 18:33:09.24585 INFO::Creating boxplot for categorical data, diagnosis vs Alistipes.putredinis
## 2025-04-15 18:33:09.526057 INFO::Creating boxplot for categorical data, diagnosis vs Clostridium.bolteae
## 2025-04-15 18:33:09.817705 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)
## Platform: x86_64-apple-darwin20
## Running under: macOS Monterey 12.7.6
##
## Matrix products: default
## BLAS: /Library/Frameworks/R.framework/Versions/4.5-x86_64/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.5-x86_64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.1
##
## locale:
## [1] C/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
##
## 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?