有关威布尔分布卷积的积分问题

问题描述 投票:0回答:1

[嗨,我试图用参数t,lambda(scale参数)和k如下计算Weibull分布的卷积:

f.x <- function(x,lambda,k){
  dweibull(x,k,lambda)
}
cum <- function(T,lambda,k)
{ 
  return(1 - exp(-(T/lambda)^k))
}

F1_t = function(t,lambda,k){
  cum(t,lambda,k)
}
F2_t = function(t,lambda,k){
  integrate(function(x) F1_t(t-x,lambda,k)*f.x(x,lambda,k),0,t)$value

}
F3_t = function(t, lambda ,k){
  integrate(function(x) F2_t(t-x,lambda,k)*f.x(x,lambda,k),0,t)$value
}

其中F2_t和F3_t是第二和第三次卷积的卷积定义,F2_t可以正常工作,但是当我用以下方法评估F3_t时:>

F3_t(1,1,2)

我从R收到以下警告:

 Error in integrate(function(x) F1_t(t - x, lambda, k) * f.x(x, lambda,  : 
  length(upper) == 1 is not TRUE 

我想知道为什么出现此问题以及如何解决此问题。

你好,我尝试用参数t,lambda(比例参数)和k:f.x来计算Weibull分布的卷积,如下所示:

r continuous-integration convolution maintenance weibull
1个回答
0
投票

[问题在于,与F1_t不同,F2没有向量化,这意味着它不为t的向量返回结果的向量。

观察那个

© www.soinside.com 2019 - 2024. All rights reserved.