将nls曲线拟合到实验数据并获得拟合参数

时间:2017-03-03 00:11:04

标签: r nls function-fitting

我有一个理想的曲线数据集显示为bleow。我制作了一个描述理想数据集的nls模型。我还有实验数据,我想对模型进行绘图以找到拟合的值。我该怎么做?

Caq         q Langmuir
0           0
0.002           0.001198975
0.004           0.00234561
0.006           0.00344326
0.008           0.004494998
0.01            0.005503645
0.02            0.009984597
0.03            0.013703679
0.05            0.01952051
0.1         0.028637319
0.2         0.037362059
0.3         0.041585223
0.4         0.04407627
0.5         0.04571949
0.6         0.046884773
0.7         0.047754159
0.8         0.048427657
1           0.049403112
2           0.051476858
3           0.052207344
4           0.052580417
5           0.052806831
10          0.05326556
25          0.053544642
50          0.053638321
75          0.05366962
100         0.053685283
125         0.053694686
150         0.053700956

实验数据:

    Caq mean    q mean

0.119776495 -9.59E-06
0.09367508  0.002213347
0.158928618 0.007557445
0.212581528 0.015132666
0.108175866 0.022821814
0.129927046 0.030301749
0.209681371 0.037970427
2.199189257 0.045278635
14.37839971 0.048293908
30.33941524 0.050573923
42.56357812 0.053796262
50.38530228 0.056462806
102.3793218 0.059950779
127.9587089 0.06566134

我绘制了这个:(第一行是我的拟合,下一个实验数据。第三行是我对实验数据的拟合。我得到x和y长度不同的错误。
我知道我对拟合过程的基本理解有问题,但我不知道是什么。

Langmuirfit<- nls(formula = q.Langmuir ~ Q*b*Caq/(1+b*Caq),  data = PIsotherm, start = list(Q = 0.05, b = 1), algorith = "port")

plot(PIsotherm$Caq.mean,PIsotherm$q.mean, pch=16)
lines(PIsotherm$Caq.mean,predict(Langmuirfit))

enter image description here

0 个答案:

没有答案