1

如何找到 F 检验的上限和下限临界值:var.test(x,y)

我的文字示例:

x <- c (1973, 403, 509, 2103, 1153  292, 1916, 1602, 1559, 547, 801, 359)

y <- c (1185, 885, 2955, 815, 2852, 1217, 1762, 2592, 1632)

var.test(x,y, alternative = c("two.sided"),  conf.level = 0.95)

 F test to compare two variances

data:  x and y

F = 0.6908, num df = 11, denom df = 8, p-value = 0.5572

alternative hypothesis: true ratio of variances is not equal to 1 

95 percent confidence interval:

 0.1628029 2.5311116 

sample estimates:

ratio of variances 

         0.6908397 

书上说临界值是 F < 0.273 和 F > 4.30

好像 R 说 F < 0.1628029 和 F > 2.5311116

关于这个有什么想法吗?

4

1 回答 1

8

95% 置信区间取决于方差的比率,而不是 F 统计量。这是 F 统计量的计算:

> qf(c(0.025,0.975),11,8)
[1] 0.2729392 4.2434128

这与您的表格一致。

如果我们向内看,stats:::var.test.default我们会发现

   BETA <- (1 - conf.level)/2
   CINT <- c(ESTIMATE/qf(1 - BETA, DF.x, DF.y), ESTIMATE/qf(BETA, 
            DF.x, DF.y))

第二行实际上可以更简单地写成ESTIMATE/qf(c(1-BETA,BETA),DF.x,DF.y),但我不确定这种琐碎的代码清理是否值得向 R-core 建议努力......

conf.level使用等于 0.95 进行此计算,上面的方差比估计值和我们上面计算的分位数匹配:

> 0.6908397/c(0.273,4.30)
[1] 2.5305484 0.1606604
于 2011-10-06T02:54:53.820 回答