简短的问题
我在 R 中运行回归并制作了响应变量的箱线图,并按其中一个预测变量分组。在这个箱线图上,我想添加一些关于统计模型的信息。你会建议我提供什么信息(以及如何显示它(这不是编程问题))?
展开的问题
我有几个预测变量:两个分类的、非序数的预测变量和一个连续的预测变量(下面用 R 编码)
set.seed(81)
pred1 = rep(c('Car', 'Bike', 'Train', 'Airplane'), 6)
pred2 = rep(c('High', 'Low', 'Middle'), 8)
pred3 = rnorm(24)
resp = c(rnorm(12, sd = 1), rnorm(12, sd = 5))
resp
是响应变量。我用三明治估计进行了回归:
require(sandwich)
require(lmtest)
m = aov(resp ~ pred1 + pred2)
coeftest(m, sandwich)
t test of coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.49642 0.73911 -0.6716 0.51034
pred1Bike 1.55917 1.16568 1.3376 0.19769
pred1Car 1.23873 1.24080 0.9983 0.33135
pred1Train 2.50882 0.91468 2.7428 0.01338 *
pred2Low 0.11613 1.00540 0.1155 0.90932
pred2Middle 0.51476 0.90924 0.5661 0.57829
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
我为以下组绘制了箱线图pred1
:
require(ggplot2)
ggplot(data.frame(pred1, resp), aes(x=pred1, y=resp)) + geom_boxplot()
在此图上,我想添加一些字母以指示统计上相似的组(p.value < 0.05),如此处所述。像这样的东西:
ggplot(data.frame(pred1, resp), aes(x=pred1, y=resp)) + geom_boxplot() + annotate('text', x=1:4, y=6, label=c('a','b','a','b'), size = 8, color='red')
我的问题是:
我怎样才能找到这些 p.values 与我的稳健回归进行成对比较?我可以做以下m
简单的 aov 模型:
TukeyHSD(m)
但以下不起作用:
TukeyHSD(coeftest(m, sandwich))
我可能会误解这些成对比较是什么,以及我目前的结果是什么意思!如果您有这种感觉,请告诉我!我的问题的目的是让我了解在箱线图上显示统计模型结果的最佳方式是什么。
注意:变量pred2
和pred3
用于提取我不希望影响的方差的某些部分pred1
(如pred1
,pred2
并且pred3
在我的情况下是相关的)。因此,我想最好不要运行简单的成对 t 检验来获得我想在每个箱线图顶部添加的 p.values。