从Kruskal-Wallis输出中提取p值

时间:2015-02-11 12:31:44

标签: r data-extraction kruskal-wallis

假设我有一个数据框

> col1<-c(1,5,2,6,8,1,3,8,9,1,8)
> col2<-c(1,2,1,1,2,2,1,2,2,1,1)
> df<-data.frame(col1,col2)
> df

   col1 col2
1     1    1
2     5    2
3     2    1
4     6    1
5     8    2
6     1    2
7     3    1
8     8    2
9     9    2
10    1    1
11    8    1

我使用df

中的数据运行了Kruskal-Wallis测试
> dfKW<-kruskal.test(col1~col2, data=df)
> dfKW

Kruskal-Wallis rank sum test

data:  col1 by col2
Kruskal-Wallis chi-squared = 1.695, df = 1, p-value = 0.1929

我想要做的是将p值提取到一个向量中(只有没有标签'p-value'的值)。我试过这个:

> dfKWx<-sapply(dfKW, '[', 'p.value')
> dfKWx

statistic.NA parameter.NA      p.value       method    data.name 
          NA           NA           NA           NA           NA 

显然没有运气。

我从谷歌教授那里获得的初步帮助使我达到了上述的目的。

真诚感谢所有帮助。谢谢!

PS。请注意,数据仅用于提供示例。我没有测试正态分布,也不希望这些数据。我的原始工作数据没有正常分发,但由于机密性因素,我不会使用它或其中的一部分作为示例。示例数据的行为与我原始的工作数据类似。

1 个答案:

答案 0 :(得分:2)

这会将p值作为numeric

> dfKW$p.value
[1] 0.1929473

看看&#34;价值&#34; ?kruskal.test中的部分。