从agricolae中的LSD.test输出中提取字母

时间:2018-04-10 01:30:13

标签: r anova posthoc

我在agricolae个套餐

中使用library('agricolae') group <- c(1,1,1,2,2,2,3,3,3) variable <- c(1,2,1.5,10,11,12,22,23,21) df <- data.frame(cbind(group,variable)) model <- aov(variable~group,data=df) LSD.test(model,"group",p.adj="bonferroni")

以下是可重复的示例

$statistics
  MSerror Df Mean       CV  t.value      MSD
  0.8035714  7 11.5 7.794969 3.127552 2.289134

$parameters
  test  p.ajusted name.t ntr alpha
  Fisher-LSD bonferroni  group   3  0.05

$means
variable std r        LCL       UCL Min Max   Q25  Q50   Q75
1      1.5 0.5 3  0.2761907  2.723809   1   2  1.25  1.5  1.75
2     11.0 1.0 3  9.7761907 12.223809  10  12 10.50 11.0 11.50
3     22.0 1.0 3 20.7761907 23.223809  21  23 21.50 22.0 22.50

$comparison
NULL

$groups
variable groups
3     22.0      a
2     11.0      b
1      1.5      c

attr(,"class")
[1] "group"

我得到以下输出很棒

output [[5]][[1]][[1]]

我想从这个输出中提取中位数和字母。

例如,为了提取第3组的中位数,我使用了这个函数

[1] 22

提供此输出

output [[5]][[2]][[1]]
[1] a
Levels: a b c
直到现在,一切都很好。我将解释问题并提出以下问题。

现在,我也需要提取这封信。

我尝试了以下代码

Levels: a b c

我的问题是: 有没有办法摆脱代码中的// Colors' Construction ColorUtils::rgbColor c1(1.0f, 1.0f, 1.0f), c2(0.5f, 0.5f, 0.5f); // Calculate Delta-E std::cout << ColorUtils::getColorDeltaE(c1, c2) << '\n'; 语句并只获取字母?

非常感谢提前。

1 个答案:

答案 0 :(得分:0)

as.character(output [[5]][[2]][[1]])

解决了这个问题,感谢@Tim Biegeleisen的评论