繁体   English   中英

TukeyHSD 在 R 中返回太多值

[英]TukeyHSD returns too many values in R

我对 R (和统计数据)非常陌生,我搜索了很多可能的解决方案,但找不到任何解决方案。

我有一个包含大约 18000 个条目的数据集,其中包含两列:“租金”和“季节”。 我想使用单向方差分析来分析租金的平均值是否因季节而异。

我的数据如下所示:

租金 季节
23 1
12 1
17 2
16 2
44 3
22 3
2 4
14 4

首先,我计算组(季节)的 SD 和 MEAN:

anova %>%
    group_by(season) %>%
    summarise(
        count_season = n(),
        mean_rentals = mean(rentals, na.rm = TRUE),
        sd_rentals = sd(rentals, na.rm = TRUE))

这是结果:

在此处输入图像描述

然后我执行单向方差分析:

anova_one_way <- aov(season~as.factor(rentals), data = anova)
summary(anova_one_way)
<!-- I use "as.factor" on rentals, because otherwise I'm getting an error with TukeyHSD -->

结果: 在此处输入图像描述

棘手的部分来了。 我执行 TukeyHSD 测试:

TukeyHSD(anova_one_way) 

结果非常令人失望。 TukeyHSD 返回 376896 行,而我希望它只返回几行,将季节相互比较。 看起来每个“出租”行都被作为一个组处理。 这似乎是非常错误的,但我找不到原因。 这是考虑到大数据集的常见 TukeyHSD 行为,还是我的代码或逻辑中存在错误,导致这个巨大的不可读值列表作为返回值?

这是关于它的外观的一个小见解(一直持续到 376896)。 在此处输入图像描述

这些术语在您的aov()调用中是错误的。 租金是结果(因)变量,季节是预测(自)变量。

所以你要:

anova_one_way <- aov(rentals ~ factor(season), data = anova)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM