我习惯在minitab中进行Tukey事后测试。当我这样做时,通常会得到因变量/预测变量的族分组。
在R中,使用TukeyHSD()
不会显示(或计算出)族分组。它仅显示每个因变量/预测变量之间的关系。 是否可以在minitab中显示家庭分组?
使用diamonds
数据集:
av <- aov(price ~ cut, data = diamonds)
tk <- TukeyHSD(av, ordered = T, which = "cut")
plot(tk)
输出:
Fit: aov(formula = price ~ cut, data = diamonds)
$cut
diff lwr upr p adj
Good-Ideal 471.32248 300.28228 642.3627 0.0000000
Very Good-Ideal 524.21792 401.33117 647.1047 0.0000000
Fair-Ideal 901.21579 621.86019 1180.5714 0.0000000
Premium-Ideal 1126.71573 1008.80880 1244.6227 0.0000000
Very Good-Good 52.89544 -130.15186 235.9427 0.9341158
Fair-Good 429.89331 119.33783 740.4488 0.0014980
Premium-Good 655.39325 475.65120 835.1353 0.0000000
Fair-Very Good 376.99787 90.13360 663.8622 0.0031094
Premium-Very Good 602.49781 467.76249 737.2331 0.0000000
Premium-Fair 225.49994 -59.26664 510.2665 0.1950425
答案 0 :(得分:0)
这是有关如何为ggplot2::diamonds
数据集复制minitab表的分步示例。我已尽可能包含详细信息/说明。
请注意,据我所知,minitab表中显示的结果与Tukey事后测试的结果无关/无关;它们基于方差分析的结果。 Tukey的诚实显着性差异(HSD)检验是事后检验,可确定在给出方差分析结果的情况下(诚实的)那些比较在(组平均值的所有可能的成对比较中)具有统计学意义。
为了重现minitab的“均值分组”摘要表(请参见first table of "Interpret the results: Step 3" of the minitab Express Support),我建议(重新)运行线性模型以提取均值和置信区间。请注意,这正是aov
拟合各组方差分析模型的方式。
我们指定一个0
偏移量以获得每个组的绝对估算值(而不是相对于偏移量的变化估算值)。
fit <- lm(price ~ 0 + cut, data = diamonds)
coef <- summary(fit)$coef;
coef;
# Estimate Std. Error t value Pr(>|t|)
#cutFair 4358.758 98.78795 44.12236 0
#cutGood 3928.864 56.59175 69.42468 0
#cutVery Good 3981.760 36.06181 110.41487 0
#cutPremium 4584.258 33.75352 135.81570 0
#cutIdeal 3457.542 27.00121 128.05137 0
为了获得类似于minitab的“家庭分组”的信息,我们采用以下方法:
我们从计算置信区间开始,并使用完全链接使用分层聚类对所得距离矩阵进行聚类。
CI <- confint(fit);
hc <- hclust(dist(CI));
我们检查聚类树状图
plot(hc);
我们现在在所有参数估计值上以与所有CI的标准偏差相对应的高度切割树,以获取“家庭分组”
grps <- cutree(hc, h = sd(CI))
最后,我们整理所有数量并将结果存储在类似于minitab的“均值分组”表的表中。
library(tidyverse)
bind_cols(
cut = rownames(coef),
N = as.integer(table(fit$model$cut)),
Mean = coef[, 1],
Groupings = grps) %>%
as.data.frame()
# cut N Mean Groupings
#1 cutFair 1610 4358.758 1
#2 cutGood 4906 3928.864 2
#3 cutVery Good 12082 3981.760 2
#4 cutPremium 13791 4584.258 1
#5 cutIdeal 21551 3457.542 3
请注意,我们的结果与minitab“均值分组”表中的结果几乎完全一致:cut = Ideal
本身位于组3
中(minitab表中的C
组) ,而Fair
+ Premium
共享组1
(minitab:组A
),而Good
+ Very Good
共享组2
(迷你标签:组B
)。