当且
时,曲线是一条非常接近
的曲线而近似于一条直线。当
时,
,函数经过原点。当r逐渐变大,s为负数。
a <- 1; b <- 1; c <- 0
range(s)
[1] -1.71828 0.00000
参数b的改变对曲线形态的影响
令。
- b为偶数时,
,且当
时,b的取值越大,曲线的弧度越大。当
时,y似乎为无穷大。当
越大,曲线的拐点似乎在右方移动,然而随着
越大,移动的越慢。且当
和
时其改变的速率并不相同。
- b为奇数时,
。当
时,y似乎为无穷大。
图1 a=1, c=0, b改变时的不同曲线
参数a的改变对曲线形态的影响
- 令
,当a越大(a>0),曲线的拐点越陡峭,越靠近原点附近。y的最大值增速加大。
当,有
。
图2 b=8, c=0, a改变时的不同曲线 - 令
,a越大(a>0),曲线的拐点越明显,越靠近原点附近。
当,
越大拐点接近于直角,越靠近原点。
图3 b=-2, c=0, a改变时的不同曲线
应用:
使用抽样调查时,r代表调查面积或调查的群体的相对大小。S指代调查得到的物种丰富度,或相对物种丰富度等。
应用的数据集如下:
> spC
X r obv lo hi method
1 1 0.00137174 -0.95 -0.95 -0.95 Circular
2 2 0.00274348 -0.90 -0.95 -0.90 Circular
3 3 0.00411523 -0.85 -0.95 -0.85 Circular
4 4 0.00548697 -0.80 -0.90 -0.80 Circular
5 5 0.00685871 -0.80 -0.90 -0.75 Circular
6 6 0.00823045 -0.75 -0.85 -0.70 Circular
其中obv列为因变量,也就是观测到的结果。lo列为每组观测最低值,hi为每组观测最大值。method列为不同方法,该数据包含C和N两种方法。
数据的散点图分布如下:
图5 数据分布
其中蓝色代表了传统的C方法,红色代表了新的N方法,在这里y轴代表了调查结果(或者说估计结果)与真实结果之间的相对偏差,即:
由于在相对更小面积下调查得到的物种丰富度一定小于真实数量,故y总是小于0。我们想比较这两种方法的优劣,显而易见的是红色的方法更容易达到偏差为0,也就是说,红色的方法在相对更小的调查面积上,得到更接近真实水平的物种丰富度。
根据不同的方法分别对obv和r分别利用公式(1)进行拟合,使用R自带的nls函数。
fitSpC <- nls(obv ~ (1-(exp(a*r)))^b+c, data=spC, start = list(a=-12, b=0.5, c=-1))
summary(fitSpC)
Formula: obv ~ (1 - (exp(a * r)))^b + c
Parameters:
Estimate Std. Error t value Pr(>|t|)
a -12.68614 0.28277 -44.9 <2e-16 ***
b 0.47152 0.00952 49.5 <2e-16 ***
c -1.01146 0.00100 -1008.9 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.0225 on 726 degrees of freedom
Number of iterations to convergence: 10
Achieved convergence tolerance: 5.54e-06
cor(spC$obv, predict(fitSpC))
[1] 0.983294
fitSpN <- nls(obv ~ (1-(exp(a*r)))^b+c, data=spN, start = list(a=-63, b=0.5, c=-1))
summary(fitSpN)
Formula: obv ~ (1 - (exp(a * r)))^b + c
Parameters:
Estimate Std. Error t value Pr(>|t|)
a -6.40e+01 8.17e-01 -78.3 <2e-16 ***
b 5.73e-01 7.63e-03 75.1 <2e-16 ***
c -1.00e+00 2.61e-04 -3833.1 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.00682 on 726 degrees of freedom
Number of iterations to convergence: 5
Achieved convergence tolerance: 9.93e-06
cor(spN$obv, predict(fitSpN))```
[1] 0.993705
图6 散点分布图与拟合曲线