R:基于轮廓似然的置信区间

R:基于轮廓似然的置信区间,r,confidence-interval,R,Confidence Interval,我正在使用库Bhat中的函数plkhci构建基于轮廓可能性的置信区间,我得到了以下警告: 警告消息:在dqstep(列表)中(label=x$label,est=btrf(xt,x$low, x$upp),low=x$low,:oops:找不到步长,使用默认值 当我跑的时候 r我给了你一个超长的答案,但它将帮助你看到你可以追踪自己的错误消息(大多数时候,有时这种查看函数的方法不起作用)。当方法抛出警告时,最好能看到它内部发生了什么,因为有时它是好的,有时您需要修复数据 这个函数真的很复杂!您可以

我正在使用库
Bhat
中的函数
plkhci
构建基于轮廓可能性的置信区间,我得到了以下警告:

警告消息:在dqstep(列表)中(label=x$label,est=btrf(xt,x$low, x$upp),low=x$low,:oops:找不到步长,使用默认值

当我跑的时候


r我给了你一个超长的答案,但它将帮助你看到你可以追踪自己的错误消息(大多数时候,有时这种查看函数的方法不起作用)。当方法抛出警告时,最好能看到它内部发生了什么,因为有时它是好的,有时您需要修复数据

这个函数真的很复杂!您可以通过在R命令行中键入
dfp
来查看它(后面没有括号),它将打印出整个函数

从末尾起17行,您将看到一个作业:

del <- dqstep(x, f, sens = 0.01)
这就是罪魁祸首,它返回您得到的消息。它正上方的一行说明了r是如何计算的。您正在向此函数输入先前函数中的默认
x
,再加上一个灵敏度方程(我假设dfp生成,它又大又丑,所以我没有解开所有的方程)。当上一个嵌套函数返回小于零的
r
值,以及
NA
r
值或
b
值为零时,将显示该消息

第二个错误告诉您,它很可能是
b==0
,因为b是分母,它返回的是无穷大值,所以这个嵌套函数不会将步长返回给dfp中的变量
del

该步骤被输入到该等式中:

h <- logit.hessian(x, f, del, dapprox = FALSE, nfcn)  

h我看到另一个部分有类似的警告
if(is.na(f2))你现在决定在置信区间计算中使用该步长是否正确是什么意思?我该如何决定?对于x:
x列表中的上界和下界,错误部分可以是其中之一,但它们似乎在说同样的事情,因为被零除的错误可能是ow和无穷大值取决于子函数的编写方式。至于步长,这一系列函数允许您影响如何根据提交的数据计算间隔。如果您的数据不允许计算间隔,则您需要明确设置默认值,或接受列为默认值的步骤。关于h的决定如何前进与您的数据、数据的使用、行业标准有关。没有简单的答案。您似乎在处理回归方程。但您也在手动输入值……因此不清楚值来自何处……这些问题实际上与R无关,但更多的是与统计相关的,而且非常复杂具体来说。你可能想和你所在领域的人联系,讨论如何继续。。。
if (r < 0 | is.na(r) | b == 0) {
        warning("oops: unable to find stepsize, use default")
        cat("problem with ", x$label[i], "\n")
        break
    }  
h <- logit.hessian(x, f, del, dapprox = FALSE, nfcn)