如何使用R做非线性回归

发布网友 发布时间:2022-04-24 18:33

我来回答

3个回答

热心网友 时间:2023-11-01 20:35

打开R,注意要把该安装的函数包都安装一下,然后用nls函数做非线性回归

例如:估计非线性回归统计模型

步骤:

#读取数据并查看

f<-read.csv(file="D:/XXX.csv")

f

#做出x与y之间的散点图

plot(f$y~f$x)

#利用nls函数估计β1、β2

nls(f$y~1/(β1+β2*exp(-f$x)),data=f,start=list(β1=1,β2=1))

#添加非线性回归线

y<-f$y

x<-f$x

f<-function(β1,β2,x){1/(β1+β2*exp(-x))}

f.1<-function(x){f(带入估计出的β1,β2,x)}

curve(f.1,add=T,col="red")

热心网友 时间:2023-11-01 20:35

非线性回归
nonlinear regression
所谓回归分析法,是在掌握大量观察数据的基础上,利用数理统计方法建立因变量与自变量之间的回归关系函数表达式(称回归方程式)。回归分析中,当研究的因果关系只涉及因变量和一个自变量时,叫做一元回归分析;当研究的因果关系涉及因变量和两个或两个以上自变量时,叫做多元回归分析。此外,回归分析中,又依据描述自变量与因变量之间因果关系的函数表达式是线性的还是非线性的,分为线性回归分析和非线性回归分析。通常线性回归分析法是最基本的分析方法,遇到非线性回归问题可以借助数学手段化为线性回归问题处理。
对具有非线性关系的因变量与自变量的数据进行的回归分析。
处理非线性回归的基本方法是,通过变量变换,将非线性回归化为线性回归,然后用线性回归方法处理。假定根据理论或经验,已获得输出变量与输入变量之间的非线性表达式,但表达式的系数是未知的,要根据输入输出的n次观察结果来确定系数的值。按最小二乘法原理来求出系数值,所得到的模型为非线性回归模型(nonlinear regression model)。

热心网友 时间:2023-11-01 20:36

nls(formula, data, start, control, algorithm,
trace, subset, weights, na.action, model,
lower, upper, …)

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com