如何将非线性回归输出参数分配给变量
How to assign non-linear regression output parameter to a variable
我想使用nls函数估计的参数
我正在使用 m1<-nls(y1~v1*x/(k1+x))
函数对数据执行非线性回归。
我可以显示存储在 m1 中的预测 v1 和 k1 值。
如何将这些值分配给特定变量(类似于 "parameter <- v1")?
v1 和 k1 对象不存在 ("Error: object 'v1' not found")
>\> m1<-nls(y1~v1*x/(k1+x))
>\> m1
> Nonlinear regression model
> model: y1 ~ v1 * x/(k1 + x)
> data: parent.frame()
> v1 k1
> 16.83 30.05
> residual sum-of-squares: 0.8571
> Number of iterations to convergence: 5
> Achieved convergence tolerance: 1.4e-06
>\> parameter <- v1
>
Error: object 'v1' not found
这给出了一个系数向量
co <- coef(m1)
这给了他们一个个:
v1 <- coef(m1)[["v1"]]
k1 <- coef(m1)[["k1"]]
或者如果您只想使用系数计算表达式:
with(as.list(coef(m1)), k1 + v1)
这可以将 coef(m1)
的所有单个元素复制到您的工作区:
list2env(as.list(coef(m1)), .GlobalEnv)
我想使用nls函数估计的参数
我正在使用 m1<-nls(y1~v1*x/(k1+x))
函数对数据执行非线性回归。
我可以显示存储在 m1 中的预测 v1 和 k1 值。
如何将这些值分配给特定变量(类似于 "parameter <- v1")?
v1 和 k1 对象不存在 ("Error: object 'v1' not found")
>\> m1<-nls(y1~v1*x/(k1+x))
>\> m1
> Nonlinear regression model
> model: y1 ~ v1 * x/(k1 + x)
> data: parent.frame()
> v1 k1
> 16.83 30.05
> residual sum-of-squares: 0.8571
> Number of iterations to convergence: 5
> Achieved convergence tolerance: 1.4e-06
>\> parameter <- v1
>
Error: object 'v1' not found
这给出了一个系数向量
co <- coef(m1)
这给了他们一个个:
v1 <- coef(m1)[["v1"]]
k1 <- coef(m1)[["k1"]]
或者如果您只想使用系数计算表达式:
with(as.list(coef(m1)), k1 + v1)
这可以将 coef(m1)
的所有单个元素复制到您的工作区:
list2env(as.list(coef(m1)), .GlobalEnv)