Определение функции f
:
f <- function(x) 1/(1+exp(-(0.1348*x + 64.7027))) + (x - 70)
Чтобы увидеть, где может упасть root, постройте функцию, пробуя несколько ограничений.
curve(f, from = 0, to = 100)
Один выше есть конечные точки противоположных знаков, так что это работа для uniroot
.
uniroot(f, interval = c(0, 100))
#$root
#[1] 69
#
#$f.root
#[1] 0
#
#$iter
#[1] 1
#
#$init.it
#[1] NA
#
#$estim.prec
#[1] 69
Чтобы получить значение root, попробуйте любой из двух способов ниже.
uniroot(f, interval = c(0, 100))$root
#[1] 69
y <- uniroot(f, interval = c(0, 100))
y$root
#[1] 69