Commit 22509efc authored by magali's avatar magali
Browse files

mises à jour stats

parent fdc44777
Pipeline #47731 passed with stage
in 3 minutes and 58 seconds
......@@ -399,7 +399,39 @@ grid.newpage(); grid.draw(venn.plot)
#### Représentation des communautés au niveau Phylum {.tabset}
##### Tableaux relatives abondances
##### Plot composition
```{r 7-composition-phylum, eval = TRUE}
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data)$Group <- factor(sample_data(frogs.data)$Group,
levels = correct.order)
p <- plot_composition(frogs.data, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p<- p + facet_wrap(~Group, scales = "free_x", nrow = 1) +
theme(strip.text.x = element_text(size = 14, color = "black")) +
scale_y_continuous(label = scales::percent)
plot(p)
```
```{r 11bis-composition-phylum-merged, eval = TRUE}
frogs.data.merged<-merge_samples(frogs.data,group="Group")
sample_data(frogs.data.merged)$Group <- sample_names(frogs.data.merged)
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data.merged)$Group <- factor(sample_data(frogs.data.merged)$Group,
levels = correct.order)
p <- plot_composition(frogs.data.merged, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p <- p + facet_wrap(~Group, scales = "free_x", nrow = 1)
p <- p + ggtitle("Phylum Composition (12 top Phylum)")+
scale_y_continuous(label = scales::percent) + theme(axis.text.x = element_blank())
plot(p)
```
##### Table relatives abondances
```{r count-phylum, eval = TRUE}
#Get count of phyla
......@@ -407,7 +439,7 @@ table<-table(phyloseq::tax_table(frogs.data)[, "Phylum"])
table
```
Relative Abondance par échantillon
* Relative Abondance par échantillon
```{r relative abundance-phylum, eval = TRUE}
......@@ -418,9 +450,9 @@ data_rel_abund = phyloseq::transform_sample_counts(frogs.data, function(x) 100 *
data_phylum <- phyloseq::tax_glom(data_rel_abund, "Phylum")
phyloseq::taxa_names(data_phylum) <- phyloseq::tax_table(data_phylum)[, "Phylum"]
rel_abun<-phyloseq::otu_table(data_phylum)
rel_abun_sample<-phyloseq::otu_table(data_phylum)
rel_abun %>%
rel_abun_sample %>%
DT::datatable(extensions = 'Buttons',
options = list(dom = 'Bfrtip',
pageLength = 20,
......@@ -428,33 +460,34 @@ rel_abun %>%
```
Relative abondance par groupe
* Relative abondance par groupe
```{r 9-relative abundance-phylum, eval = TRUE}
#Convert to relative abundance
data_rel_abund = phyloseq::transform_sample_counts(frogs.data, function(x) 100 * x/sum(x))
#Agglomerate to phylum-level and rename
data_phylum <- phyloseq::tax_glom(data_rel_abund, "Phylum")
ps1 <- merge_samples(data_phylum, "Group")
data_phylum_2 <- transform_sample_counts(ps1, function(x) 100 * x/sum(x))
#Agglomerate to group
merge_group <- merge_samples(data_phylum, "Group")
#Convert to relative abundance
data_phylum_2 <- transform_sample_counts(merge_group, function(x) 100 * x/sum(x))
phyloseq::taxa_names(data_phylum_2) <- phyloseq::tax_table(data_phylum_2)[, "Phylum"]
rel_abun2<-phyloseq::otu_table(data_phylum_2)
rel_abun2 %>%
rel_abun_group<-phyloseq::otu_table(data_phylum_2)
rel_abun_group %>%
DT::datatable(extensions = 'Buttons',
options = list(dom = 'Bfrtip',
pageLength = 20,
buttons = list('copy', 'csv', 'excel')))
```
##### Boxplot Phylum avec stats
##### Boxplot wilcoxon
On va se focaliser sur les 5 Phylum et représenter leurs abondances dans les différents groupe sous forme de boxplot.
On va utiliser CTRL comme groupe de référence et le comparer à tout les autres avec un test de wilcoxon pour voir desquels il diffère.
On va utiliser **HFD** comme groupe de référence et le comparer à tous les autres avec un **test de wilcoxon** pour voir desquels il diffère.
Le nombre d'étoiles codent le niveau de significativité, les comparaisons non-significatives ne sont pas indiqués
* Boxplot
```{r Phylum stats,fig.width=10,fig.height=5, eval = TRUE}
library(ggpubr)
## Select only some families
......@@ -463,9 +496,10 @@ phy <- frogs.data %>% subset_taxa(Phylum %in% families) %>% tax_glom(taxrank="Ph
## Transform count to relative abundances
depth <- sample_sums(frogs.data)[1]
plotdata<-psmelt(phy) %>%
mutate(Abundance = Abundance / depth,
Group = factor(Group, labels = c("HFD", "HFD_Gln","SD","SD_Gln")))
mutate(Abundance = Abundance / depth,
Group = factor(Group, labels = c("HFD", "HFD_Gln","SD","SD_Gln"))) #ordre affichage groupes
p <- ggplot(plotdata,aes(x = Group,y=Abundance, color = Group, Group = Group)) +
stat_boxplot(geom = "errorbar", width = 0.5) +
......@@ -489,43 +523,12 @@ plot(p)
```
<div class="alert comment">Le test wilcon compare HFD aux autres groupes</div>
<div class="alert comment">Le test wilcoxon compare HFD aux autres groupes</div>
##### Plot composition Phylum
```{r 7-composition-phylum, eval = TRUE}
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data)$Group <- factor(sample_data(frogs.data)$Group,
levels = correct.order)
##### Test de Kruskal-Wallis
p <- plot_composition(frogs.data, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p<- p + facet_wrap(~Group, scales = "free_x", nrow = 1) +
theme(strip.text.x = element_text(size = 14, color = "black")) +
scale_y_continuous(label = scales::percent)
plot(p)
```
```{r 11bis-composition-phylum-merged, eval = TRUE}
frogs.data.merged<-merge_samples(frogs.data,group="Group")
sample_data(frogs.data.merged)$Group <- sample_names(frogs.data.merged)
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data.merged)$Group <- factor(sample_data(frogs.data.merged)$Group,
levels = correct.order)
p <- plot_composition(frogs.data.merged, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p <- p + facet_wrap(~Group, scales = "free_x", nrow = 1)
p <- p + ggtitle("Phylum Composition (12 top Phylum)")+
scale_y_continuous(label = scales::percent) ## Changer le titre
plot(p)
```
##### Stats Phylum
Test de Kruskal (Anova non paramétrique) pour chaque Phylum pour tester si les abondances sont similaires (pour ce Phylum) entre les différents groupes.
Anova non paramétrique pour chaque Phylum pour tester si les abondances sont similaires (pour ce Phylum) entre les différents groupes.
```{r data.-phylum, eval = TRUE}
# depth <- sample_sums(frogs.data)[1]
......@@ -543,11 +546,60 @@ data.test %>%
options = list(dom = 'Bfrtip',
pageLength = 10,
buttons = list('copy', 'csv', 'excel')))
```
##### Test Dunn Post-Hoc {.tabset}
<div class="alert alert-info" role="alert">
Dunn Post-Hoc test sur le resultat de Kruskall-Wallis de l'impact de "Group" sur l'abondance de chaque phylum
</div>
* Actinobacteriota
```{r Post-Hoc test Actinobacteriota, eval = TRUE, echo = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Actinobacteriota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Bacteroidota
```{r Post-Hoc test Bacteroidetes, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Bacteroidota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Desulfobacterota
```{r Post-Hoc test Desulfobacterota, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Desulfobacterota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Firmicutes
```{r Post-Hoc test firmicutes, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Firmicutes") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Proteobacteria
```{r Post-Hoc test Proteobacteria, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Proteobacteria") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
#### Représentation des communautés au niveau Family {.tabset}
##### Plot composition Family
##### Plot composition
```{r 11-composition-phylum, eval = TRUE}
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
......@@ -571,19 +623,72 @@ levels = correct.order)
p <- plot_composition(frogs.data.merged, "Kingdom", "Bacteria", "Family",numberOfTaxa = 12, fill = "Family")
p <- p + facet_wrap(~Group, scales = "free_x", nrow = 1)
p <- p + ggtitle("Family Composition (12 top Family)")+
scale_y_continuous(label = scales::percent) ## Changer le titre
scale_y_continuous(label = scales::percent) + theme(axis.text.x = element_blank())
plot(p)
```
##### Stats Family
```{r count-family, eval=TRUE}
#Get count of phyla
table(phyloseq::tax_table(frogs.data)[, "Family"])
```
##### Boxplot wilcoxon
On va se focaliser sur les 12 Family et représenter leurs abondances dans les différents groupe sous forme de boxplot.
On va utiliser **HFD** comme groupe de référence et le comparer à tous les autres avec un **test de wilcoxon** pour voir desquels il diffère.
Le nombre d'étoiles codent le niveau de significativité, les comparaisons non-significatives ne sont pas indiqués
* Boxplot
```{r Family stats,fig.width=10,fig.height=8, eval = TRUE}
library(ggpubr)
## Select only some families
families <- c("Bacteroidaceae ","Butyricicoccaceae","Desulfovibrionaceae" ,"Lachnospiraceae", "Lactobacillaceae ", "Marinifilaceae ","Muribaculaceae","Oscillospiraceae " ,"Prevotellaceae", "Rikenellaceae ", "Ruminococcaceae", "Tannerellaceae")
phy <- frogs.data %>% subset_taxa(Family %in% families) %>% tax_glom(taxrank="Family") #agglomerate at family level
## Transform count to relative abundances
depth <- sample_sums(frogs.data)[1]
plotdata<-psmelt(phy) %>%
mutate(Abundance = Abundance / depth,
Group = factor(Group, labels = c("HFD", "HFD_Gln","SD","SD_Gln"))) #ordre affichage groupes
p <- ggplot(plotdata,aes(x = Group,y=Abundance, color = Group, Group = Group)) +
stat_boxplot(geom = "errorbar", width = 0.5) +
geom_boxplot(outlier.alpha = 1,
outlier.size = 0.8) +
facet_wrap(~Family, scales = "free_y", ncol = 3) +
scale_color_manual(values = c("HFD" = "#FE642E","HFD_Gln" = "#F7D358",
"SD" = "#5FB404","SD_Gln" = "#00BFFF"),
guide = "none") +
# theme_classic() + ## fond blanc
labs(x = NULL) +
theme(axis.text.x = element_text(angle = 45, hjust = 1, size = 10))
## Compare reference level T0 to all other levels using a wilcoxon test and adjust p-values using the holm correction.
p <- p + stat_compare_means(aes(label = ..p.signif..), method = "wilcox.test", p.adjust.method = "holm", ref.group = "HFD", hide.ns = T,
label.y.npc = c(0.90),
size = 7,
fontface = "bold")
plot(p)
```
##### Test de Kruskal-Wallis
Je fais cette fois le test de Kruskal (Anova non paramétrique) pour chaque Family pour tester si les abondances sont similaires (pour cette famille) entre les différents groupes.
```{r data.-family, eval=TRUE}
# depth <- sample_sums(frogs.data)[1]
data.phylum <- frogs.data %>%
data.family <- frogs.data %>%
transform_sample_counts(function(x) { x / sum(x)}) %>% ## transform counts to proportions
fast_tax_glom(taxrank = "Family") %>%
psmelt() %>%
......@@ -591,7 +696,7 @@ data.phylum <- frogs.data %>%
```
```{r test kruskal-family, eval = TRUE}
data.test <- compare_means(Abundance ~ Group, data = data.phylum, method = "kruskal", group.by = "Family")
data.test <- compare_means(Abundance ~ Group, data = data.family, method = "kruskal", group.by = "Family")
data.test %>%
DT::datatable(extensions = 'Buttons',
options = list(dom = 'Bfrtip',
......@@ -657,14 +762,6 @@ plot(p)
#### Courbes de raréfaction
Comme ces distances sont sensibles à la profondeur d'échantillonnage, on va raréfier les échantillons avant de calculer les distances.
Normalisation par rarefaction: même nombre de séquences pour chaque échantillon.
```{r rarefaction, eval=TRUE}
frogs.data.rare<-rarefy_even_depth(frogs.data,rngseed=20170329)
sample_sums(frogs.data.rare)[1:5]
```
Avant de calculer les diversités $\alpha$, on va faire des courbes de raréfaction pour vérifier si on a saturé la richesse sous-dominante (i.e. celle qui passe les filtres d'abondances).
......@@ -914,6 +1011,17 @@ TukeyHSD(model)
#### Calcul des distances
Comme ces distances sont sensibles à la profondeur d'échantillonnage, on va raréfier les échantillons avant de calculer les distances.
Normalisation par rarefaction: même nombre de séquences pour chaque échantillon.
```{r rarefaction, eval=TRUE}
frogs.data.rare<-rarefy_even_depth(frogs.data,rngseed=20170329)
sample_sums(frogs.data.rare)[1:5]
```
```{r 27-dist-as-heatmap-bc,fig.width=10,fig.height=9, eval=TRUE}
SampleOrder <- levels(reorder(sample_names(frogs.data.rare), as.numeric(get_variable(frogs.data.rare, "Group"))))
dist.bc <- distance(frogs.data.rare, "bray")
......@@ -1186,7 +1294,7 @@ Représentation de la table d'abondance.
Montre les intéractions entre (les groupes) de taxa et (les groupes) d'échantillons.
Elle essaie de trouver un ordre des echantillons et des OTU pour faire sortir une info interessante.
```{r 39-heatmap-1, warning=FALSE,fig.width = 10, fig.height = 50, eval = TRUE}
```{r 39-heatmap-1, warning=FALSE,fig.width = 10, fig.height = 80, eval = TRUE}
## On rajoute une fausse colonne nomm?e "my_rank" dans la table taxonomique dans laquelle on a concaténé nom de famille et nom de cluster
my.da.otus <- frogs.data.rare
tdf <- tax_table(frogs.data.rare)
......@@ -1195,8 +1303,8 @@ tax_table(my.da.otus) <- tdf
#Ensuite tu peux appeler plot_heatmap sur my.data.otus comme avant en remplaçant taxa.label = "Family" par taxa.label = #"my_rank"
p<-plot_heatmap(prune_taxa(da.otus$OTU,my.da.otus) , taxa.order = da.otus$OTU,sample.order=sample_names(my.da.otus),low = "yellow", high = "red", na.value = "white", title = "DAOTUs",taxa.label = "my_rank")+facet_grid(". ~ Group", scales = "free_x") +
theme(axis.text.y = element_text(size=10))
p<-plot_heatmap(prune_taxa(da.otus$OTU,my.da.otus) , taxa.order = da.otus$OTU,sample.order=sample_names(my.da.otus),low = "yellow", high = "red", na.value = "white", title = "DAOTUs",taxa.label = "my_rank",max.label = 800)+facet_grid(". ~ Group", scales = "free_x") +
theme(axis.text.y = element_text(size=9))
plot(p)
```
......@@ -1205,7 +1313,7 @@ plot(p)
#### Boxplot des taxas prevalents avec pval=0.05 et min.abundance = 50
```{r, 40- boxplot, fig.width = 15, fig.height = 80, eval = TRUE}
```{r, 40- boxplot, fig.width = 15, fig.height = 100, eval = TRUE}
plotdata <- build_plotdata_daotus(da.otus, filtered.data, min.abundance = 50)
......
This diff is collapsed.
......@@ -402,7 +402,39 @@ grid.newpage(); grid.draw(venn.plot)
#### Représentation des communautés au niveau Phylum {.tabset}
##### Tableaux relatives abondances
##### Plot composition
```{r 7-composition-phylum, eval = TRUE}
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data)$Group <- factor(sample_data(frogs.data)$Group,
levels = correct.order)
p <- plot_composition(frogs.data, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p<- p + facet_wrap(~Group, scales = "free_x", nrow = 1) +
theme(strip.text.x = element_text(size = 14, color = "black")) +
scale_y_continuous(label = scales::percent)
plot(p)
```
```{r 11bis-composition-phylum-merged, eval = TRUE}
frogs.data.merged<-merge_samples(frogs.data,group="Group")
sample_data(frogs.data.merged)$Group <- sample_names(frogs.data.merged)
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data.merged)$Group <- factor(sample_data(frogs.data.merged)$Group,
levels = correct.order)
p <- plot_composition(frogs.data.merged, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p <- p + facet_wrap(~Group, scales = "free_x", nrow = 1)
p <- p + ggtitle("Phylum Composition (12 top Phylum)")+
scale_y_continuous(label = scales::percent) + theme(axis.text.x = element_blank())
plot(p)
```
##### Table relatives abondances
```{r count-phylum, eval = TRUE}
#Get count of phyla
......@@ -410,7 +442,7 @@ table<-table(phyloseq::tax_table(frogs.data)[, "Phylum"])
table
```
Relative Abondance par échantillon
* Relative Abondance par échantillon
```{r relative abundance-phylum, eval = TRUE}
......@@ -421,41 +453,38 @@ data_rel_abund = phyloseq::transform_sample_counts(frogs.data, function(x) 100 *
data_phylum <- phyloseq::tax_glom(data_rel_abund, "Phylum")
phyloseq::taxa_names(data_phylum) <- phyloseq::tax_table(data_phylum)[, "Phylum"]
rel_abun<-phyloseq::otu_table(data_phylum)
rel_abun_sample<-phyloseq::otu_table(data_phylum)
rel_abun %>%
rel_abun_sample %>%
DT::datatable(extensions = 'Buttons',
options = list(dom = 'Bfrtip',
pageLength = 200,
pageLength = 20,
buttons = list('copy', 'csv', 'excel')))
```
Relative abondance par groupe
* Relative abondance par groupe
```{r 9-relative abundance-phylum, eval = TRUE}
#Agglomerate to group
merge_group <- merge_samples(data_phylum, "Group")
#Convert to relative abundance
data_rel_abund = phyloseq::transform_sample_counts(frogs.data, function(x) 100 * x/sum(x))
#Agglomerate to phylum-level and rename
data_phylum <- phyloseq::tax_glom(data_rel_abund, "Phylum")
ps1 <- merge_samples(data_phylum, "Group")
data_phylum_2 <- transform_sample_counts(ps1, function(x) 100 * x/sum(x))
data_phylum_2 <- transform_sample_counts(merge_group, function(x) 100 * x/sum(x))
phyloseq::taxa_names(data_phylum_2) <- phyloseq::tax_table(data_phylum_2)[, "Phylum"]
rel_abun2<-phyloseq::otu_table(data_phylum_2)
rel_abun2 %>%
rel_abun_group<-phyloseq::otu_table(data_phylum_2)
rel_abun_group %>%
DT::datatable(extensions = 'Buttons',
options = list(dom = 'Bfrtip',
pageLength = 200,
pageLength = 20,
buttons = list('copy', 'csv', 'excel')))
```
##### Boxplot Phylum avec stats
On va se focaliser sur les 5 Phylum et représenter leurs abondances dans les différents groupe sous forme de boxplot.
On va utiliser CTRL comme groupe de référence et le comparer à tout les autres avec un test de wilcoxon pour voir desquels il diffère.
On va utiliser **HFD** comme groupe de référence et le comparer à tous les autres avec un **test de wilcoxon** pour voir desquels il diffère.
Le nombre d'étoiles codent le niveau de significativité, les comparaisons non-significatives ne sont pas indiqués
```{r Phylum stats,fig.width=10,fig.height=5, eval = TRUE}
......@@ -466,9 +495,10 @@ phy <- frogs.data %>% subset_taxa(Phylum %in% families) %>% tax_glom(taxrank="Ph
## Transform count to relative abundances
depth <- sample_sums(frogs.data)[1]
plotdata<-psmelt(phy) %>%
mutate(Abundance = Abundance / depth,
Group = factor(Group, labels = c("HFD", "HFD_Gln","SD","SD_Gln")))
mutate(Abundance = Abundance / depth,
Group = factor(Group, labels = c("HFD", "HFD_Gln","SD","SD_Gln"))) #ordre affichage groupes
p <- ggplot(plotdata,aes(x = Group,y=Abundance, color = Group, Group = Group)) +
stat_boxplot(geom = "errorbar", width = 0.5) +
......@@ -489,44 +519,12 @@ p <- p + stat_compare_means(aes(label = ..p.signif..), method = "wilcox.test", p
size = 7,
fontface = "bold")
plot(p)
```
<div class="alert comment">Le test wilcon compare HFD aux autres groupes</div>
##### Plot composition Phylum
```{r 7-composition-phylum, eval = TRUE}
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data)$Group <- factor(sample_data(frogs.data)$Group,
levels = correct.order)
p <- plot_composition(frogs.data, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p<- p + facet_wrap(~Group, scales = "free_x", nrow = 1) +
theme(strip.text.x = element_text(size = 14, color = "black")) +
scale_y_continuous(label = scales::percent)
plot(p)
```
```{r 11bis-composition-phylum-merged, eval = TRUE}
frogs.data.merged<-merge_samples(frogs.data,group="Group")
sample_data(frogs.data.merged)$Group <- sample_names(frogs.data.merged)
correct.order <- c("HFD", "HFD_Gln","SD","SD_Gln")
sample_data(frogs.data.merged)$Group <- factor(sample_data(frogs.data.merged)$Group,
levels = correct.order)
<div class="alert comment">Le test wilcoxon compare HFD aux autres groupes</div>
p <- plot_composition(frogs.data.merged, "Kingdom", "Bacteria", "Phylum",numberOfTaxa = 6, fill = "Phylum")
p <- p + facet_wrap(~Group, scales = "free_x", nrow = 1)
p <- p + ggtitle("Phylum Composition (12 top Phylum)")+
scale_y_continuous(label = scales::percent) ## Changer le titre
plot(p)
```
##### Stats Phylum
##### Test de Kruskal-Wallis
Test de Kruskal (Anova non paramétrique) pour chaque Phylum pour tester si les abondances sont similaires (pour ce Phylum) entre les différents groupes.
......@@ -547,10 +545,57 @@ data.test %>%
pageLength = 10,
buttons = list('copy', 'csv', 'excel')))
```
##### Test Dunn Post-Hoc {.tabset}
<div class="alert alert-info" role="alert">
Dunn Post-Hoc test sur le resultat de Kruskall-Wallis de l'impact de "Group" sur l'abondance de chaque phylum
</div>
* Actinobacteriota
```{r Post-Hoc test Actinobacteriota, eval = TRUE, echo = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Actinobacteriota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Bacteroidota
```{r Post-Hoc test Bacteroidetes, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Bacteroidota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Desulfobacterota
```{r Post-Hoc test Desulfobacterota, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Desulfobacterota") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Firmicutes
```{r Post-Hoc test firmicutes, eval = TRUE}
## Dunn Post-Hoc test for the Kruskall-Wallis results of the impact of `Group` on Firmicutes abundances
filter(data.phylum, Phylum == "Firmicutes") %>%
dunn.test::dunn.test(x = .$Abundance, g = .$Group, method = "bh")
```
* Proteobacteria