R语言非线性方程数值分析生物降解、植物生长数据:多项式、渐近回归、米氏方程、逻辑曲线、Gompertz、Weibull曲线(上):https://developer.aliyun.com/article/1498728
对数方程
这确实是一个对数转化后的线性模型:
可以使用 'lm()' 函数来拟合对数方程。
# b 是正值 model <- lm(Y ~ log(X) ) summary(model)
summary(model)
plot(model,
# b 是负值 X <- c(1,2,4,5,7,12) a <- 2; b <- -0.5 summary(model)
plot(model, log="",
Michaelis-Menten方程
这是一个双曲线形状的方程,通常参数化为:
这条曲线朝上凸起,随着X′ 的增加而增加,直到达到一个平台水平。参数a′ 表示高位渐近线(对于X→∞),而b′ 是使得响应等于a/2的X值。事实上,很容易证明:
由此可得,b=x50=50。
斜率(一阶导数)为:
D(expression( (a*X) / (b + X) ), "X")
从这里可以看出,初始斜率(在X=0时)为 i=a/b。
res <- rnorm(8, 0, 0.1) Y <- Ye + res # nls拟合 mol <- nls(Y ~ SSien(X, a, b)) summary(model)
# drm拟合 summary(model)
plot(model, log="", main = "Mic
"drc"包还包含自启动函数 "MM.3()",其中当 X=0 时,允许 Y ≠ c ≠ 0。
产量损失/密度曲线
杂草与农作物竞争研究使用重新参数化的Michaelis-Menten模型。实际上,Michaelis-Menten的初始斜率可以被视为竞争的测量,即在首次添加杂草到系统中时产量(Y)的减少。因此,将Michaelis-Methen模型重新参数化以将i=a/b=α/β作为显式参数进行描述。重新参数化的方程为:
该模型可用于描述杂草密度对产量损失的影响。因此需要使用无杂草的产量和以下方程来计算产量损失(百分比):
其中,YW是观测到的产量,YWF是无杂草的产量。下面以日葵种植在增加密度的Sinapis arvensis杂草中的情况为例进行说明。
competition$YL <- (Ywf - competition$Yield) / Ywf * 100 # nls拟合 summary(model)
# drm拟合 summary(model)
plot(model, log="
上述拟合约束了当杂草密度为0时,产量损失为0。
确实,从上述方程我们推导出:
和所示:
model <- dr summary(model)
plot(model
S 型曲线
S 型曲线具有 S 形状,可以是递增、递减、对称或非对称的。它们有许多参数化方法,有时可能让人困惑。因此,我们将展示一种常见的参数化方法,这在生物学方面非常有用。
逻辑曲线
逻辑曲线来源于累积逻辑分布函数;曲线在拐点处对称,并可以参数化为:
其中,d 是上渐近线,c 是下渐近线,e 是在 d 和 c 之间产生响应的 X 值,而 b 是拐点附近的斜率。参数 b 可以是正数或负数,因此 Y 可以随着 X 的增加而增加或减少。
逻辑函数非常有用,例如用于植物生长研究。
model <- dm(weightFree ~ DAE, fct = sum
plot(model, log="",
Gompertz 曲线
Gompertz 曲线有许多参数化方法。我们倾向于使用与逻辑函数相似的参数化方法:
其中参数的含义与逻辑函数中的参数相同。不同之处在于该曲线在拐点处不对称。
另一种不对称性
我们已经看到,相对于逻辑函数,Gompertz 函数在开始时呈现更长的延迟,但之后稳步上升。我们可以通过以下方式更改 Gompertz 函数来描述不同的模式:
该函数的自启动函数尚不可用,至少在我所知道的范围内。此外,我也不知道这个函数的特定名称。
通过在图表中比较这三个逻辑函数,我们可以看到它们在偏斜和对称性方面的差异。
curve( E.fun(x, b, c, d, e), add = T, col = "blue" ) legen
基于对数的 S 型曲线
在生物学中,测量的数值通常是严格为正的(时间、重量、高度、计数)。因此,使用对非正数也定义的函数可能看起来不现实。因此,通常更倾向于使用独立变量 X 被限制为正的函数。所有上述描述的 S 型曲线都可以基于 X 的对数进行,这样我们可以得到更现实的模型。
对数-逻辑曲线
在许多应用中,S 型响应曲线在 x 的对数上是对称的,这需要一个对数-逻辑曲线(对数正态曲线实际上几乎等效,但很少使用)。例如,在生物测定中(但也在萌发测定中),对数-逻辑曲线定义如下:
参数的含义与上述逻辑方程中的含义相同。很容易看出上述方程等价于:
另一种可能的参数化方法是所谓的 Hill 函数:
确实:
对数-逻辑函数用于作物生长、种子萌发和生物测定,它们可以具有与逻辑函数相同的约束条件。
我们展示了一个基于对数-逻辑拟合的示例,涉及到对一个除草剂处理的甘蓝菜生物测定中不断增加剂量的关系。
dm(FW~ Dose,fct = L.4(),data =brssica) summary(model)
plot(model, main = "对数-逻辑方程")
Weibull 曲线(类型 1)
类型 1 Weibull 曲线与替代 Gompertz 曲线的对数-逻辑曲线相似。方程如下:
参数与上述其他 S 型曲线的含义相同。
Weibull 曲线(类型 2)
类型 2 Weibull 曲线与 Gompertz 曲线的对数-逻辑曲线相似。方程如下:
参数与上述其他 S 型曲线的含义相同。
我们将对这些 Weibull 曲线拟合数据集。
plot(model, main = "Weibull functions") plo