单因素多个levels数据在做方差分析后,需要进一步做如t检验等置后检验,判断两两组间差异。更多知识分享请到 https://zouhua.top/

加载R包和准备数据

  1. # Load required R packages
  2. library(tidyverse)
  3. library(rstatix)
  4. library(ggpubr)
  5. data("PlantGrowth")
  6. set.seed(1234)
  7. PlantGrowth %>% sample_n_by(group, size = 1)

数据分析:多组两两t-test及可视化 - 图1

查看统计量

  1. PlantGrowth %>%
  2. group_by(group) %>%
  3. get_summary_stats(weight, type = "mean_sd")

数据分析:多组两两t-test及可视化 - 图2

使用ANOVA test比较多组的平均值

  1. res.aov <- PlantGrowth %>% anova_test(weight ~ group)
  2. res.aov

数据分析:多组两两t-test及可视化 - 图3

组间t检验

  1. pwc <- PlantGrowth %>%
  2. pairwise_t_test(weight ~ group, p.adjust.method = "bonferroni")
  3. pwc

数据分析:多组两两t-test及可视化 - 图4

p值得坐标轴参数

  1. pwc <- pwc %>% add_xy_position(x = "group")
  2. pwc

数据分析:多组两两t-test及可视化 - 图5

可视化

  1. ggboxplot(PlantGrowth, x = "group", y = "weight") +
  2. stat_pvalue_manual(pwc, label = "p.adj", tip.length = 0, step.increase = 0.1) +
  3. labs(
  4. subtitle = get_test_label(res.aov, detailed = TRUE),
  5. caption = get_pwc_label(pwc))

数据分析:多组两两t-test及可视化 - 图6

Reference

  1. HOW TO PERFORM T-TEST FOR MULTIPLE GROUPS IN R

参考文章如引起任何侵权问题,可以与我联系,谢谢。