2016-11-21 357 views
0

我想找到给定的两个自由度(下面的1和29)给定的对应于p = 0.05的F值(一个(右侧)分布的分布)。我这样做的试验和错误:如何找到对应于特定p值的F值,例如R中p = 0.05?

#..F values..............p values... 
1-pf(4.75, 1, 29) # 0.03756451 
1-pf(4.15, 1, 29) # 0.05085273 
1-pf(4.18295, 1, 29) # 0.05000037 
1-pf(4.18297, 1, 29) # 0.04999985 
1-pf(4.18296, 1, 29) # 0.05000011 

所以,我想获得F = 4.18296未经审判和错误。任何想法?

回答

3

有两种方法可以实现这样的结果,我们需要使用点函数:

qf(1 - 0.05, 1, 29)qf(0.05, 1, 29, lower.tail = FALSE)

qf(1 - 0.05, 1, 29) 
# [1] 4.182964 

qf(0.05, 1, 29, lower.tail = FALSE) 
# [1] 4.182964 

1 - pf(4.182964, 1, 29) 
# [1] 0.05000001 

第一个选项考虑到的lower.tail默认选项是等于TRUE所以我们必须使用1 - 0.05

对于第二个选项,我们指定我们想要P [X> x]使用lower.tail = FALSE

+1

非常有帮助,特别是:'qf(0.05,1,29,lower.tail = FALSE)' –

+0

@ErdoganCEVHER:该选项也适用于'pf':'pf(4.182964,1,29,lower.tail = FALSE)' – etienne