【问题标题】:Two-parameter square root model regression R两参数平方根模型回归 R
【发布时间】:2020-05-04 20:08:28
【问题描述】:

我需要根据我的数据 xy 执行回归模型。型号为y = b * ((x-0) * (1-exp(d*(x-100)))。我需要获得bd 常量。我以前(不久前)做过,但出于某种原因,我已经汗流浃背了。我已经在这里看了好几个小时才能得到答案,但没有运气。我试过了:

m1 <-nls(b((data$x-0)*(1-exp(d*(data$x-100)))), data = data, start = list(b = 1, d = 0.1) 但我得到了could not find function "b" and "d"

【问题讨论】:

    标签: r statistics regression


    【解决方案1】:

    在 R 中,您需要一个“*”来将变量乘以其他值,例如:

    set.seed(222)
    data = data.frame(x=runif(100,100,110))
    b = 0.7
    d = 0.1
    data$y = with(data,b * x * (1-exp(d*(x-100))))+ rnorm(100,5,1)
    
    m1 <-nls(y ~ b*x*(1-exp(d*(x-100))), 
    data = data, start = list(b = 1, d = 1))
    
            Nonlinear regression model
      model: y ~ b * x * (1 - exp(d * (x - 100)))
       data: data
         b      d 
    0.4334 0.1311 
     residual sum-of-squares: 481.9
    

    我们可以绘制它:

    f = function(x,b,d){ b*x*(1-exp(d*(x-100))) }
    plot(data)
    linspace = seq(100,110,by=0.5)
    lines(linspace,f(linspace,coefficients(m1)["b"],coefficients(m1)["d"]),col="blue")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-06
      • 2013-11-22
      • 1970-01-01
      • 2018-03-16
      • 2020-12-14
      • 2013-07-23
      相关资源
      最近更新 更多