全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
23581 10
2011-12-20
对于y=a*x^b,
怎么用R语言对函数进行拟合后求出a和b
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-12-20 22:55:18
> x <- 1:20
> y <- 3*x^2+ 30*rnorm(20)
> plot(x,y)
> fit <- nls(y ~ a*x^b, start = list(a=2, b= 1.5))
> lines(seq(1, 20, by = 0.1), predict(fit, data.frame(x=seq(1, 20, by = 0.1))))
> fit
Nonlinear regression model
  model:  y ~ a * x^b
   data:  parent.frame()
    a     b
3.366 1.963
residual sum-of-squares: 16158

Number of iterations to convergence: 6
Achieved convergence tolerance: 4.238e-07
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-12-21 10:06:51
qoiqpwqr 发表于 2011-12-20 22:55
> x  y  plot(x,y)
> fit  lines(seq(1, 20, by = 0.1), predict(fit, data.frame(x=seq(1, 20, by = 0.1) ...
不懂前三行命令是在干什么,有x,y数据,不是就直接fit<-nls(y~a*x^b)吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2011-12-21 10:56:52
ELIANE! 发表于 2011-12-21 10:06
不懂前三行命令是在干什么,有x,y数据,不是就直接fit
前面几行只是用来产生x和y的,如果你已经有x,y了,直接nls就可以了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-4-28 20:24:31
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-10-7 19:21:20
qoiqpwqr 发表于 2011-12-21 10:56
前面几行只是用来产生x和y的,如果你已经有x,y了,直接nls就可以了。
大神!如果幂函数拟合时出现singular gradient,怎么办
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群