使用 nls 应用拟合数据

Applying fitting data with nls

您好,在此先感谢您提出任何建议!我的问题是使用 nls() 我怎样才能

  1. 在其他拟合中找到最佳拟合——即线性和非线性——为我的数据和

  2. 在下面的 ggplot 图表上显示拟合?

    library(ggplot2)
    library(mosiac)
    library(tidyverse)
    library(dplyr)
    
    # data frame
    FX <- data.frame(Location=c(1:5), mi=c(1, 4, 16, 16^2,256^2))
    
    #Visual
    ggplot(FX,aes(x=Location, y=mi))+
      geom_line(alpha=0.9, color="red")
    
    # nls(). It shows error of Error in nls(mi ~ Location, data = FX, start = list(mi = 1, 
    #Location = 1)) : 
    #no parameters to fit
    nls(mi~Location,data=FX,start=list(mi=1,Location=1))
    

您需要在 nls() 函数中包含方程式的可调参数。

FX <- data.frame(Location=c(1:5), mi=c(1, 4, 16, 16^2,256^2))

nls(mi~a+Location^b, data=FX, start=list(a=1, b=4))

# Nonlinear regression model
# model: mi ~ a + Location^b
# data: FX
# a         b 
# -3573.540     6.906 
# residual sum-of-squares: 142513083
# 
# Number of iterations to convergence: 8 
# Achieved convergence tolerance: 6.011e-06