Следующий код предназначен для вычисления математического ожидания случайной величины логит-нормального распределения с параметрами mu и sigma (mu — это mu, а lsig — логарифм сигмы).
fun5 = function(y,mu=mu0,lsig=lsig0) {
res = exp(y)/(1+exp(y)) * 1/sqrt(2*pi)/exp(lsig) * exp(-(y-mu)^2/2/exp(lsig)^2)
return(res)
}
el = 17
integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
Мы должны интегрировать эту функцию от отрицательной бесконечности до положительной бесконечности, но я не знаю, как это сделать, и умею интегрировать только для конечного интервала. Таким образом, я пытаюсь интегрировать из «достаточно широкого» интервала (от -el до +el). Когда «el» больше 0,5, кажется, что он работает разумно (истинное значение этой интеграции составляет 0,585). Но когда el равно 14 и 15, это работает странно. Кто-нибудь знает, почему это происходит?
> el = 10
> integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
[1] 0.585
> el = 13
> integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
[1] 0.585
> el = 14
> integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
[1] 2.975338e-05
> el = 15
> integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
[1] 1.134474e-05
> el = 16
> integrate(fun5,-el,el,mu=0.3434108,lsig=-3.5)$value
[1] 0.585
integrate(fun5, -Inf, Inf, mu = 0.3434108, lsig = -3.5)
- person Dason   schedule 02.02.2016