使用 curve() 函数显示逻辑曲线的变化
Using the curve() function to show changes in a logistic curve
我有一个问题要求使用 curve()
或 geom_function()
来显示逻辑曲线如何随着每个参数(a
和 b
)从正值变化到否定。
他们给出了逻辑曲线:
y = (exp(a + bx)/1 + exp(a + bx)
在 curve()
函数中,我可以看到将表达式放在哪里,但是当我将这个等式放入其中时它无法识别。
curve(expr, from = NULL, to = NULL, n = 101, add = FALSE,
type = "l", xname = "x", xlab = xname, ylab = NULL,
log = NULL, xlim = NULL, …)
我试过:
curve(expr = (exp(a + bx)/1 + exp(a + bx)), from = -10, to = 10, n = 10)
我在其中为范围和 n 编了数字。但它不将其识别为函数或表达式。我必须以某种方式能够制作两个图,一个是 a 变化的,另一个是 b 在多个值上变化的。
有谁知道如何将表达式输入公式,然后操作变量?
您必须正确分隔 *
和 /
。定义曲线为lg
,然后循环绘制曲线。
lg <- function(x, a = 1, b = 1){
exp(a+b*x) / (1+exp(a+b*x))
}
# curves with changing b
for (b in c(1:5)){
curve(expr = lg(x, 1, b), from = -5, to = 5, n = 100, add= TRUE, col = b)
}
# curves with changing a
for (a in c(1:5)){
curve(expr = lg(x, a, 1), from = -5, to = 5, n = 100, add= TRUE, col = a)
}
我有一个问题要求使用 curve()
或 geom_function()
来显示逻辑曲线如何随着每个参数(a
和 b
)从正值变化到否定。
他们给出了逻辑曲线: y = (exp(a + bx)/1 + exp(a + bx)
在 curve()
函数中,我可以看到将表达式放在哪里,但是当我将这个等式放入其中时它无法识别。
curve(expr, from = NULL, to = NULL, n = 101, add = FALSE,
type = "l", xname = "x", xlab = xname, ylab = NULL,
log = NULL, xlim = NULL, …)
我试过:
curve(expr = (exp(a + bx)/1 + exp(a + bx)), from = -10, to = 10, n = 10)
我在其中为范围和 n 编了数字。但它不将其识别为函数或表达式。我必须以某种方式能够制作两个图,一个是 a 变化的,另一个是 b 在多个值上变化的。
有谁知道如何将表达式输入公式,然后操作变量?
您必须正确分隔 *
和 /
。定义曲线为lg
,然后循环绘制曲线。
lg <- function(x, a = 1, b = 1){
exp(a+b*x) / (1+exp(a+b*x))
}
# curves with changing b
for (b in c(1:5)){
curve(expr = lg(x, 1, b), from = -5, to = 5, n = 100, add= TRUE, col = b)
}
# curves with changing a
for (a in c(1:5)){
curve(expr = lg(x, a, 1), from = -5, to = 5, n = 100, add= TRUE, col = a)
}