用R拟合y~exp(-x ^ a)

时间:2017-03-04 20:52:55

标签: r nls

我刚开始使用nls 我试图适应

y ~  exp(-x^a) :
m<- nls(y ~  exp(-x^a),start=list(a=0))

它似乎工作正常:)

我的问题是我想出一个“a”来将值写入文件。

我可以看到值是3.612但是如何获取值?

m
Nonlinear regression model
  model: y ~ exp(-x^a)
   data: parent.frame()
    a 
3.612 
 residual sum-of-squares: 0.06132

Number of iterations to convergence: 9 
Achieved convergence tolerance: 3.654e-06

1 个答案:

答案 0 :(得分:1)

您可以通过

获取a的值
coef(m)[["a"]]

示例(来自help(nls)的模型):

x <- 1:10
y <- 2*x + 3                            
yeps <- y + rnorm(length(y), sd = 0.01)
(m <- nls(yeps ~ a + b*x, start = list(a = 0.12345, b = 0.54321)))
# Nonlinear regression model
# model: yeps ~ a + b * x
# data: parent.frame()
# a b 
# 3 2 
# residual sum-of-squares: 0.000834
#
# Number of iterations to convergence: 2 
# Achieved convergence tolerance: 5.23e-09
coef(m)[["a"]]
# [1] 3.0052