问一个问题啊,非线性拟合模型需要给定初始参数,我想用循环来找出合理的初始参数,怎么弄啊?
我的数据:
[data]
> mean.w
day mean
337 0 0.169650
339 4 0.306950
341 8 0.482350
343 12 0.743450
345 16 1.286895
347 20 2.473700
349 24 2.982200
351 28 5.423950
353 35 9.739550
355 42 15.723950
357 49 22.787900
359 56 39.161211
361 63 48.866000
363 70 52.302700
[/data]
我的循环体如下:
<br />
i <- 100<br />
while (TRUE) {<br />
i <- i + 10<br />
nls.sol <- nls(mean ~ A/(1 + B*exp(-k*day)),<br />
start = list(A = i, B = 0.5, k = 0.6),<br />
data = mean.w)<br />
if (exists("nls.sol")) break<br />
}<br />
程序中,如果参数A不正确,那么nls.sol就计算不出来,即nls.sol不存在。现在关键是如果A不正确,那么程序会跳出错误警告,并且终止运行。怎么可以让程序忽略这种错误而继续运行?
</p>