Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R值上的积分_R - Fatal编程技术网

R值上的积分

R值上的积分,r,R,我一直试图在[0,1]中通过r集成以下函数,但没有成功: brownian_bridge <- function(r){X[r*(length(X)-1)+1]-r*X[length(X)]} 此外, X=cumsum(rnorm(1000,mean=0,sd=sqrt(1/1000))) 现在我的问题是:如何在[0,1]中集成r上的browian_桥?是否有内置的R函数来执行此操作?像integrate2()这样的标准工具似乎不起作用,因为r是一个序列,而不是一个适用于[0,1]中所

我一直试图在
[0,1]
中通过r集成以下函数,但没有成功:

brownian_bridge <- function(r){X[r*(length(X)-1)+1]-r*X[length(X)]}
此外,

X=cumsum(rnorm(1000,mean=0,sd=sqrt(1/1000)))

现在我的问题是:如何在[0,1]中集成r上的browian_桥?是否有内置的R函数来执行此操作?像integrate2()这样的标准工具似乎不起作用,因为r是一个序列,而不是一个适用于[0,1]中所有r的函数。

也许您应该先使用
矢量化
,然后应用
集成

f <- Vectorize(brownian_bridge,"r")
res <- integrate(f,0,1,subdivisions = 1e5)

f也许你应该先使用
Vectorize
,然后应用
integrate

f <- Vectorize(brownian_bridge,"r")
res <- integrate(f,0,1,subdivisions = 1e5)
f
set.seed(1)
X=cumsum(rnorm(1000,mean=0,sd=sqrt(1/1000)))
brownian_bridge <- function(r){
  X[r*(length(X)-1)+1]-r*X[length(X)]
}

f <- Vectorize(brownian_bridge,"r")

res <- integrate(f,0,1,subdivisions = 1e5)
> res
0.2478581 with absolute error < 1e-04