如何在使用Agricolae包中的HSD.test()时订购团体?

时间:2016-11-16 13:04:09

标签: r posthoc tukey

我在过去已经询问过Tukey HSD测试后显示同类子集的问题(在讨论结束时参见https://stats.stackexchange.com/questions/31547/how-to-obtain-the-results-of-a-tukey-hsd-post-hoc-test-in-a-table-showing-groupe),但从未得到回答。我现在遇到同样的问题,我迫切需要一个解决方案,因为这个函数似乎是唯一可用于显示这些组的R的函数。如果不是,请告诉我。 简而言之,这就是我得到的:

Groups, Treatments and means a 140095-001 36.79 b 150004-001 32.1 b 136936-021 31.97 bc 137219-004 31.39 bc 136673-017 31.27 bc 136963-009 30.79 bcd 147328-016 30.63 bcd 0147592-01 30.55 bcde 140094-001 30.02 cde 136730-007 29.7 de 136963-066 29.49 ef 136936-004 28.4 efg 147414-004 28.2 efg 137109-036 28.2 efg 136765-001 28.06 efg 140089-001 27.82 efg 137186-020 27.8 fg 136936-006 27.48 fgh 147350-014 27.43 gh 136992-001 27.36 gh 136730-015 27.18 ghi 0147785-01 27.08 ghi 0147691-01 26.98 ghi 136891-010 26.7 ghij 0147792-01 26.49 ghijk 136947-014 26.3 ghijkl 140097-001 25.8

这就是我想要的:

    Groups, Treatments and means
a        2.1     51.17547 
ab       4.1     50.7529 
abc      3.1     47.36229 
 bcd     1.1     45.81229 
  cd     5.1     44.55313 
   de    4.0     41.81757 
    ef   2.0     38.79482 
    ef   1.0     36.91257 
     f   3.0     36.34383 
     f   5.0     35.69507 

我已经检查了函数背后的脚本,但由于我的知识相当低,我无法找到任何东西,至少没有任何直接和清晰。有人可以帮我解决一下吗?我对答案非常满意。

提前致谢, 耶勒

1 个答案:

答案 0 :(得分:0)

首次构建,例如import random import more_itertools as mit random.sample(list(mit.numeric_range(0, 2, 0.2)), 3) # [0.8, 1.0, 0.4] random.sample(list(mit.numeric_range(10.0, 20.0, 0.25)), 10) # [17.25, 12.0, 19.75, 14.25, 15.25, 12.75, 14.5, 15.75, 13.5, 18.25] 函数

的anova模型
aov

使用Tukey HSD进行事后测试,使用anova模型作为输入数据,原始数据集中的列my_model <- stats::aov(data$value ~ data$treatment) summary(my_model) 是分组因子。

treatment

并在控制台中检查结果。除其他外,还有您的问题概述表。 (在我的例子中不重要)

test_result <- agricolae::HSD.test(my_model, "my_model$treatment", group = TRUE, console = TRUE)

可以将治疗结果可视化。

  Groups, Treatments and means
 a   2008    6.755 
 a   2013    6.147 
 a   1975    4.653 
 a   1997    3.622 

Visualization for Tukey HSD