TukeyHSD 错误
Error with TukeyHSD
我有一个如下所示的数据,我尝试执行方差分析并检查所有列之间的差异。它们彼此之间的差异有多大等。
df<- structure(list(color = structure(c(3L, 4L, 3L, 4L, 4L, 4L, 4L,
4L, 4L, 4L), .Label = c("B", "G", "R", "W"), class = "factor"),
type = 1:10, X1 = c(0.006605138, 0.001165448, 0.006975109,
0.002207839, 0.00187902, 0.002208638, 0.001199808, 0.001162252,
0.001338847, 0.001106317), X2 = c(0.006041392, 0.001639298,
0.006140877, 0.002958169, 0.002744017, 0.003107995, 0.001729594,
0.001582564, 0.001971713, 0.001693236), X3 = c(0.024180351,
0.002189061, 0.027377442, 0.002886651, 0.002816333, 0.003527908,
0.00231891, 0.001695633, 0.00212034, 0.001962923)), .Names = c("color",
"type", "X1", "X2", "X3"), row.names = c(NA, 10L), class = "data.frame")
起初我使用以下命令执行方差分析
anovar= aov(type~.,df)
然后总结输出如下:
summary(anovar)
到目前为止一切都很好,而且表现也很好。但是,当我尝试执行 TukeyHSD 时,我似乎遇到了结构问题。错误如下所示。我搜索了一下,找不到任何类似的情况。任何评论将不胜感激
TukeyHSD(anovar)
# Error in rep.int(n, length(means)) : unimplemented type 'NULL' in 'rep3'
# In addition: Warning messages:
# 1: In replications(paste("~", xx), data = mf) : non-factors ignored: X1
# 2: In replications(paste("~", xx), data = mf) : non-factors ignored: X2
# 3: In replications(paste("~", xx), data = mf) : non-factors ignored: X3
正如它在 TukeyHSD 文档的描述中所说,该函数创建了一组关于 因子 与指定系列的水平平均值之间差异的置信区间 -明智的覆盖概率。
这意味着您需要在数据集中包含因素才能 运行 它。因此,如果您 select 以下因素有效:
> TukeyHSD(anovar, which = 'color') #color is the only categorical data
Tukey multiple comparisons of means
95% family-wise confidence level
Fit: aov(formula = type ~ ., data = df)
$color
diff lwr upr p adj
W-R 4.375 -1.465325 10.21532 0.1121168
您还会收到一条警告,指出将忽略非因素 X1、X2、X3。
为了打印 TukeyHSD 对象,只需将其保存并使用 plot
。 class TukeyHSD 对象有一个 plot
方法(以及一个 print
方法)。
forplot <- TukeyHSD(anovar, which = 'color')
plot(forplot)
我有一个如下所示的数据,我尝试执行方差分析并检查所有列之间的差异。它们彼此之间的差异有多大等。
df<- structure(list(color = structure(c(3L, 4L, 3L, 4L, 4L, 4L, 4L,
4L, 4L, 4L), .Label = c("B", "G", "R", "W"), class = "factor"),
type = 1:10, X1 = c(0.006605138, 0.001165448, 0.006975109,
0.002207839, 0.00187902, 0.002208638, 0.001199808, 0.001162252,
0.001338847, 0.001106317), X2 = c(0.006041392, 0.001639298,
0.006140877, 0.002958169, 0.002744017, 0.003107995, 0.001729594,
0.001582564, 0.001971713, 0.001693236), X3 = c(0.024180351,
0.002189061, 0.027377442, 0.002886651, 0.002816333, 0.003527908,
0.00231891, 0.001695633, 0.00212034, 0.001962923)), .Names = c("color",
"type", "X1", "X2", "X3"), row.names = c(NA, 10L), class = "data.frame")
起初我使用以下命令执行方差分析
anovar= aov(type~.,df)
然后总结输出如下:
summary(anovar)
到目前为止一切都很好,而且表现也很好。但是,当我尝试执行 TukeyHSD 时,我似乎遇到了结构问题。错误如下所示。我搜索了一下,找不到任何类似的情况。任何评论将不胜感激
TukeyHSD(anovar)
# Error in rep.int(n, length(means)) : unimplemented type 'NULL' in 'rep3'
# In addition: Warning messages:
# 1: In replications(paste("~", xx), data = mf) : non-factors ignored: X1
# 2: In replications(paste("~", xx), data = mf) : non-factors ignored: X2
# 3: In replications(paste("~", xx), data = mf) : non-factors ignored: X3
正如它在 TukeyHSD 文档的描述中所说,该函数创建了一组关于 因子 与指定系列的水平平均值之间差异的置信区间 -明智的覆盖概率。
这意味着您需要在数据集中包含因素才能 运行 它。因此,如果您 select 以下因素有效:
> TukeyHSD(anovar, which = 'color') #color is the only categorical data
Tukey multiple comparisons of means
95% family-wise confidence level
Fit: aov(formula = type ~ ., data = df)
$color
diff lwr upr p adj
W-R 4.375 -1.465325 10.21532 0.1121168
您还会收到一条警告,指出将忽略非因素 X1、X2、X3。
为了打印 TukeyHSD 对象,只需将其保存并使用 plot
。 class TukeyHSD 对象有一个 plot
方法(以及一个 print
方法)。
forplot <- TukeyHSD(anovar, which = 'color')
plot(forplot)