非中心卡方概率和非中心性参数

时间:2013-08-23 03:05:45

标签: r

如何获得非中心性参数的值,该参数为不同的临界值和自由度提供精确的0.9概率?

例如,当显着性水平= 0.05和1自由度(临界值= 3.84)时,ncp必须等于10.50742才能获得0.9的概率:

1 - pchisq(3.841459, 1, 10.50742)
[1] 0.9

1 个答案:

答案 0 :(得分:6)

重新排列术语:1 - pchisq(3.841459,1,10.50742)= 0.9并在结果周围包围abs以构建最小化函数:

 optim( 1, function(x) abs(pchisq(3.841459, 1, x)  - 0.1) )
#-------
$par
[1] 10.50742

$value
[1] 1.740301e-08

$counts
function gradient 
      56       NA 

$convergence
[1] 0

$message
NULL

要进行灵敏度分析,您可以连续更改其他参数的值:

for( crit.val in seq(2.5, 3.5, by=0.1)) {
         print( optim( 1, 
                function(x) abs(pchisq(crit.val, 1, x)  - 0.1), 
                method="Brent" , lower=0, upper=20)$par)}
[1] 8.194852
[1] 8.375145
[1] 8.553901
[1] 8.731204
[1] 8.907135
[1] 9.081764
[1] 9.255156
[1] 9.427372
[1] 9.598467
[1] 9.768491
[1] 9.937492