我想计算5
回归系数。我通过互联网搜索但我找不到任何相关内容。
我的数据:
y=c(2,13,0.4,5,8,10,13)
x=c(2,13,0.004,5,8,1,13)
z=c(2,3,0.004,15,8,10,1)
正规方程式:
y=a1x+a2z+a3
x,z,自变量,y是因变量,a1 a3和a2是模型的参数。
这个等式的正常拟合::
fit=lm(y~x+z)
但是我的等式看起来像:
y=((a1x+a2z+a3)^a4)+a5
我的问题是我们如何在上面显示的等式中找到此模型a4
和a5
(常数)的其他参数。我应该在R中使用什么来查找它们?
答案 0 :(得分:3)
使用optim
?
f <- function(p){
sum((y - (p[1]*x+p[2]*z+p[3])^p[4]+p[5])^2)
}
p <- optim(rep(.5, 5), f)$par
p
[1] 3.5539397 0.8423521 0.1872422 0.6287906 -0.1863242
所以,a5
是-0.1863242
。拟合值如下:
plot(seq_along(y), y)
lines((p[1]*x+p[2]*z+p[3])^p[4]+p[5])