pop.ss <- nls(MRDRSLT ~ SSlogis(TIME, phi1, phi2, phi3), data = testing, na.action = na.omit)
theta <- coef(pop.ss) #extracting coefficients
plot(MRDRSLT ~ TIME, data = testing, main = "Logistic Growth Model",
xlab = "Time", ylab = "MRD") # Census data
curve(theta[1]/(1 + exp(-(x - theta[2])/theta[3])), add = T, col = "green") # Fitted model
summary(pop.ss)
Formula: MRDRSLT ~ SSlogis(TIME, phi1, phi2, phi3)
Parameters:
Estimate Std. Error t value Pr(>|t|)
phi1 9.618e-05 6.935e-06 13.869 0.00516 **
phi2 2.480e+02 1.512e+01 16.403 0.00370 **
phi3 2.896e+01 2.392e+01 1.211 0.34960
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.197e-05 on 2 degrees of freedom
Number of iterations to convergence: 1
Achieved convergence tolerance: 1.687e-06我希望能够计算出我感兴趣的变量的加倍时间。如何从系数中提取。https://rdrr.io/r/stats/SSlogis.html
Asym/(1+exp((xmid-input)/scal))在指数增长模型中,它很容易计算,因为它是1/速率。
t_doubling <- (1 / mu) * log10(2)发布于 2021-01-13 23:27:03
这可能对CrossValidated更好。如果起始值非常小,则倍增时间的公式与指数曲线的公式相同(您的公式是错误的:倍增时间是2/速率的自然对数(log(2)/mu,不是log10(2)/mu):
x0*exp(mu*T_dbl) = 2*x0
exp(mu*T_dbl) = 2
mu*T_dbl = log(2)
T_dbl = log(2)/mu在上面给出的参数化中(使用比例参数而不是速率参数),这将是log(2)*scal (但再次注意,它仅适用于(近似)从低密度开始的逻辑曲线,并且不会投影超过约Asym*0.3的水平,超过该水平,逻辑曲线看起来越来越线性,而不是指数)。
https://stackoverflow.com/questions/65704667
复制相似问题