我刚开始使用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
答案 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