gpt4 book ai didi

r - R 中的数值积分

转载 作者:行者123 更新时间:2023-12-05 05:19:44 25 4
gpt4 key购买 nike

我正在尝试计算这个积分:

enter image description here

“A”和“Beta”是常数,“PHI”资本是正态定律N(0,1)的边际分布函数,“phi”是正态定律N(0,1)的密度和 P(tau <= t) = 1/2

这是我的实现:

integral <- function(A, beta) {

f <- function(x) {

# We have P(tau <= t) = 1/2

pnorm(qnorm(1/2,0,1) - beta*x / (sqrt(1-(beta^2))), 0, 1)*(1/sqrt(2*pi)*exp(-x^2 / 2)

}


integrate(f,lower=-Inf, upper = A)$value

}

我不太确定 qnorm 函数。有没有更好的计算方法?

最佳答案

不是说“/”运算符优于“-”。意思是在这一行

pnorm(qnorm(1/2,0,1) - beta*x / (sqrt(1-(beta^2))), 0, 1)

你错了,正确的是

(qnorm(1/2,0,1) - beta*x)
###not pnorm(qnorm(1/2,0,1)- beta*x.... =>pnorm((qnorm(1/2,0,1) -
###beta*x)....

我用了这段代码,我得到了答案

integral <- function(A, beta) {
f <- function(x) {
temp<-(qnorm(1/2,0,1) - beta*x) / (sqrt(1-(beta^2)))
pnorm(temp,0,1)*dnorm(x,0,1)
}
integrate(f,lower=-Inf, upper = A)$value
}
integral(0,0) ##.25
integral(10,.9) ##.5

此外,如果您想要另一种方法来计算任何复杂的积分,您可以使用蒙特卡洛方法或......

关于r - R 中的数值积分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45600783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com