📜  R-非线性最小二乘

📅  最后修改于: 2020-11-29 07:56:05             🧑  作者: Mango


当为回归分析建模真实世界的数据时,我们观察到很少出现模型方程是线性方程给出线性图的情况。在大多数情况下,现实世界数据模型的方程式涉及较高阶的数学函数,例如3的指数或正弦函数。在这种情况下,模型的图将给出曲线而不是直线。线性回归和非线性回归的目标都是调整模型参数的值,以找到最接近数据的直线或曲线。找到这些值后,我们将能够以较高的准确性估算响应变量。

在最小二乘回归中,我们建立了一个回归模型,在该模型中,不同点到回归曲线的垂直距离的平方和最小。我们通常从定义的模型开始,并假设一些系数值。然后,我们应用R的nls()函数来获得更准确的值以及置信区间。

句法

在R中创建非线性最小二乘检验的基本语法是-

nls(formula, data, start)

以下是所用参数的描述-

  • 公式是包含变量和参数的非线性模型公式。

  • data是用于评估公式中的变量的数据框。

  • start是起始估计的命名列表或命名数字向量。

我们将考虑一个非线性模型,该模型假定其系数为初始值。接下来,我们将看到这些假定值的置信区间是多少,以便我们可以判断这些值在模型中的表现程度。

为此,让我们考虑以下等式-

a = b1*x^2+b2

让我们假设初始系数为1和3,并将这些值拟合到nls()函数。

xvalues 

当我们执行以上代码时,它产生以下结果-

[1] 1.081935
Waiting for profiling to be done...
       2.5%    97.5%
b1 1.137708 1.253135
b2 1.497364 2.496484

非线性最小二乘R

我们可以得出结论,b1的值更接近1,而b2的值更接近2而不是3。