Logistic 增长曲线参数的置信区间

机器算法验证 r 置信区间 增长模式 逻辑曲线
2022-04-04 22:34:38

我正在使用该growthcurver来估计一些细菌生长曲线的参数。它符合以下形式的逻辑方程:

在此处输入图像描述

这将返回该方程中 K、N0 和 r 的值以及标准误差。理想情况下,我希望将它们转换为 95% 的置信区间。

这些是标准估计 +/- 1.96*se 的形式,还是需要任何转换(逻辑回归模型中的系数和标准误差)。我的怀疑是否定的,但我想验证一下。

例如,如果 r 为 1.119,se 为 0.015,那么 95% 的置信区间是(1.09,1.15)吗?

2个回答

拟合函数growthcurver::SummarizeGrowth包裹在非线性最小二乘模型minpack.lm::nlsLM上,该模型提供类似于 的参数估计统计信息lmNLS 模型在 , , 中返回$mod返回的统计数据一致KN0r

所以K, N0,r是标准估计 +/- critical value*se 形式。critical value由具有剩余自由度(样本大小 - # 个参数)的 t 分布确定在下面的示例中,critical value是 2.010635。

#example from the package
library(growthcurver)
set.seed(1)
k_in <- 0.5
n0_in <- 1e-5
r_in <- 1.2
N <- 50
data_t <- 0:N * 24 / N
data_n <- NAtT(k = k_in, n0 = n0_in, r = r_in, t = data_t) +
          rnorm(N+1, sd=k_in/10) #add noise

# Model fit
gc <- SummarizeGrowth(data_t, data_n)
summary(gc$mod) # returned nlsLM model
#   Estimate Std. Error t value Pr(>|t|)    
#k  0.608629   0.013334  45.643  < 2e-16 ***
#n0 0.005795   0.003208   1.806   0.0772 .  
#r  0.563808   0.068195   8.268 8.71e-11 ***
#Residual standard error: 0.05935 on 48 degrees of freedom

# Extracted p-value for n0 matches above
gc$vals$n0_p
> 0.07715446

# The p-value can be calculated by t-distribution
pt(gc$vals$n0 / gc$vals$n0_se, df=gc$vals$df, lower.tail=FALSE) * 2
> 0.07715446

# 95% confidence interval by t-distribution
qt(0.975, gc$vals$df)
> 2.010635
gc$vals$n0 + qt(0.975, gc$vals$df) * gc$vals$n0_se
> 0.01224516
gc$vals$n0 - qt(0.975, gc$vals$df) * gc$vals$n0_se
> -0.0006557696

如果未知的固定真参数(例如)是实数,则使用您构建的恒等链接的区间将很好地工作。r

如果未知的固定真参数(例如必须是非负实数,那么您可能会从使用对数链接函数中受益。在您的示例中,您 r 的 95% CI\的抽样分布,并反转 Wald 假设检验。对数链接函数将使用正态分布逼近的抽样分布。的 95% CI将是rrr^±1.96se^=(1.09,1.15)r^log{r^}rexp[log{r^}±1.96se^/r^]=(1.09,1.15). 因为标准误差非常小,所以这些间隔非常吻合。如果样本量较小,因此标准误差较大,则基于对数链接的区间将不同,并且与使用身份链接的区间相比,应该具有更好的覆盖概率。

例如,如果标准误差大 40 倍,即 0.6,则使用恒等链接的 Wald 区间将为 (-0.06, 2.30),而使用对数链接函数的区间将为 (0.39, 3.20)。