首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gompertz方程的多重inverse.predict()

Gompertz方程的多重inverse.predict()
EN

Stack Overflow用户
提问于 2016-03-08 14:31:18
回答 2查看 388关注 0票数 1

在将一系列数据建模到Gompertz方程之后,我想从给定y的输出参数中预测x轴上的值,然而,预测()只预测给定x的y值,而inverse.predict()只对单个值进行预测,而不是从nlsList值中预测。

有什么简单的方法吗?

代码语言:javascript
复制
#Example data
data<-data.frame(x=c(0,1,2,4,8,16,32,64,0,1,2,4,8,16,32,64,0,1,2,4,8,16,32,64),y=c(70,90,160,250,410,510,610,650,NA,NA,NA,NA,NA,NA,NA,NA,70,90,160,250,410,510,610,650),GROUPING=c(1,1,1,1,1,1,1,1,45,45,45,45,45,45,45,45,643,643,643,643,643,643,643,643))
Parameters<-nlsList(y~SSgompertz(x, Asym, xmid, scal)|GROUPING, data=data, na.action = na.omit)
Value_of_y<-300
inverse.predict(Parameters, Value_of_y)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-08 16:00:29

Gompertz函数的一般形式是

G=A*exp(-k1*exp(-k2*t))

我们可以解析地计算这个函数的逆,所以不需要使用inverse.predict:

t=log(k1/log(A/G))/k2

票数 4
EN

Stack Overflow用户

发布于 2019-03-03 18:24:52

SSgompertz中Gompertz的形式是:

代码语言:javascript
复制
y = Asym*exp(-b2*b3^x)

相反的是:

代码语言:javascript
复制
x = log((log(y / Asym) - log(Asym)) / -b2) / log(b3)

可简化为:

代码语言:javascript
复制
x = log( log(y / Asym) / -b2) / log(b3)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35870071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档