r,具有线性和非线性部分的公式

时间:2014-09-04 20:47:38

标签: r output nonlinear-functions

我的回归看起来像这样:

fit <- nls (data$y ~ (data$v1 + data$v2 + data$v3 + data$v4) *(1 + exp(theta1 - theta2*data$v5 - theta3*data$v6)^-1),
       data = data,
       start = c (theta1 =0, theta2= 0, theta3= 0))

摘要(配合)

在第一部分中,变量遵循线性关系,但它们通过非线性表达式加权(第二部分)。模型运行,但摘要仅显示非线性部分(theta1,theta2和theta3)上的参数信息。有人知道如何获得有关截距和非线性部分系数的信息吗?或者我的配方错了,R不估算这些系数?

1 个答案:

答案 0 :(得分:2)

虽然lm假定您希望系数位于每个数据列的前面,但nls没有做出这样的假设;你必须告诉它。

fit <- nls (y ~ (b0 + b1 * v1 + b2 * v2 + b3 * v3 + b4 * v4) *
                (1 + exp(theta1 - theta2 * v5 - theta3 * v6) ^ -1),
       data = data,
       start = c (b0 = 0, b1 = 1, b2 = 2, b3 = 3, b4 = 4,
                  theta1 =0, theta2= 0, theta3= 0))

您可能希望最初将lm拟合到第一部分,然后将估算的系数用作nls中的起始值。