从 Kruskal-Wallis 输出中提取 p 值
Posted
技术标签:
【中文标题】从 Kruskal-Wallis 输出中提取 p 值【英文标题】:Extract p-value from Kruskal-Wallis output 【发布时间】:2015-04-11 19:53:26 【问题描述】:假设我有一个数据框
> 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 值”的值)。我试过这个:
> dfKWx<-sapply(dfKW, '[', 'p.value')
> dfKWx
statistic.NA parameter.NA p.value method data.name
NA NA NA NA NA
显然没有运气。
从谷歌教授那里得到的初步帮助使我达到了上面描述的目的。
衷心感谢所有帮助。谢谢!
PS。请注意,数据仅用于提供示例。我没有测试正态分布,也不希望对这些数据进行测试。我的原始工作数据没有正常分发,但由于保密因素,我不会使用它——或它的一部分——作为例子。示例数据的行为与我的原始工作数据类似。
【问题讨论】:
names(dfKW)
和 str(dfKW)
对于查看可以提取哪些对象很有用
【参考方案1】:
这会给你 p 值作为numeric
:
> dfKW$p.value
[1] 0.1929473
查看?kruskal.test
中的“值”部分。
【讨论】:
谢谢!我有一个臭名昭著的倾向于浏览手册。现在我希望我能再给一次。以上是关于从 Kruskal-Wallis 输出中提取 p 值的主要内容,如果未能解决你的问题,请参考以下文章
带有调整 p 值的 R 的 Kruskal-Wallis 检验
R - stat_compare_means 从 Kruskal-Wallis 测试返回不同的值
ggpubr:更改 stat_compare_means Kruskal-Wallis p 值的字体大小