热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何使用字母标注法展示基于p值表的最小二乘均值

本文探讨了如何通过R语言对给定数据集执行混合效应模型分析,进而计算出最小二乘均值(LSMEANS)并使用字母标注法来直观展示不同处理组间的显著性差异。

在本案例中,我们使用了一组来自Urbana地点的数据,该数据集包含了不同处理方式下的多个响应变量(如产量、蛋白质含量等)。我们的目标是通过构建混合效应模型来评估这些处理之间的差异,并利用p值表和最小二乘均值表来标识统计学上的显著性差异。



首先,我们定义了数据结构,并对每个响应变量分别构建了混合效应模型。这里使用的模型形式为:响应变量 ~ 处理 + (1|区块),其中'处理'代表实验的不同处理条件,'区块'则作为随机效应项引入模型中,以控制实验设计中的变异来源。



df.urbana <- structure(list(Location = structure(c(2L,2L,2L), .Label = c("Monmouth","Urbana"), class = "factor"),
treatment = structure(c(1L,1L,3L,4L,4L), .Label = c("CC","CCS","CS","SCS"), block = structure(c(1L,1L,1L,1L,1L), .Label = c("1","2","3","4")),
B.glucosidase = c(...),
Protein = c(...),
POX.C = c(...),
yield = c(...)), row.names = 17:32, class = "data.frame")

# 构建模型
models <- list()
responses <- c('yield', 'B.glucosidase', 'Protein', 'POX.C')
for (response in responses) {
formula <- as.formula(paste(response, '~ treatment + (1|block)'))
models[[response]] <- lmerTest::lmer(formula, data = df.urbana)
}


接着,我们计算了每个模型的成对比较p值,以及相应的最小二乘均值。这些计算有助于我们理解不同处理条件下响应变量的变化情况及其统计显著性。



# 计算p值
p_values <- lapply(models, function(model) {
contrasts <- emmeans::emmeans(model, pairwise ~ treatment)$contrasts
contrasts[, c('contrast', 'p.value')]
})

# 计算最小二乘均值
ls_means <- lapply(models, function(model) {
means <- emmeans::emmeans(model, specs = ~ treatment)
as.data.frame(means)[, c('treatment', 'emmean')]
})


为了使结果更加直观,我们将最小二乘均值与显著性水平相结合,采用字母标注法来区分不同的处理组。这种方法通过为具有相似均值的组分配相同的字母,使得读者能够快速识别哪些组之间存在显著差异。



# 字母标注法
library(multcompView)
letter_labels <- lapply(ls_means, function(mean_df) {
multcompLetters4(lsmeans = mean_df$emmean, compare = 'treatment')$Letters
})

# 合并结果
final_results <- do.call(cbind, ls_means)
final_results <- cbind(final_results, do.call(cbind, letter_labels))

print(final_results)


以上代码段不仅实现了自动化的分析流程,还通过引入multcompView包进一步增强了结果的可读性和解释性。最终的输出表格将包含每个响应变量的最小二乘均值及其对应的字母标注,从而有效地展示了各处理组之间的显著性差异。


推荐阅读
author-avatar
mobiledu2502927067
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有