我不知道如何从线性模型的predict
函数重建结果和公式。当在ggplot geom_smooth(method='lm',formula,y~exp(x((中使用这些数据时,我也得到了相同的结果。
以下是的一些样本数据
x=c(1,10,100,1000,10000,100000,1000000,3000000)
y=c(1,1,10,15,20,30,40,60)
我想使用指数函数,所以(暂时忽略我记录的x值,因为exp((对于非常大的值失败(:
model = lm( y ~ exp(log10(x)))
mypred = predict(model)
plot(log(x),mypred)
我试过
lm_coef <- coef(model)
plot(log10(x),lm_coef[1]*exp(-lm_coef[2]*x))
然而,这给了我一个递减的指数,而不是递增的我的目标是提取指数函数的方程,这样我就可以在另一个上下文中重用系数。predict((使用了什么方程?有没有办法看到它?
我做了一些类似的事情
Df<-data.frame(x=c(1,10,100,1000,10000,100000,1000000,3000000),
y=c(1,1,10,15,20,30,40,60))
model<-lm(data = Df, formula = y~log(x))
predict(model)
plot(log(Df$x),predict(model))
summary(model)
你得到的相关输出是:
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -6.0700 4.7262 -1.284 0.246386
log(x) 3.5651 0.5035 7.081 0.000398 ***
---
因此,您的方程式为3.5651*log(x(-6.0700