使用R和当前组件小时weibull预测

问题描述 投票:0回答:1
I我已经适用于weibull分布的轮胎卸下的故障数据,该weibull分布具有参数beta = 1.09和eta = 2750。使用Weibull参数,我想将其应用于另一个数据集,该数据集具有1427的当前小时时间轮胎。我有兴趣预测这些组件何时会根据目前的时间失败,而在接下来的三个月中的Weibull参数。

因此,例如,如果我的轮胎在1000小时时,并且遵循此微源分布,我该如何预测它将失败的时间?我正在使用Weibull参数随机生成故障时间,然后创建蒙特卡洛模拟来计算未来三年的数字和整体故障预测。但这只是我正在努力的思考过程。

您可以使用Weibull参数估算故障时间,并且当前小时将从0转移,因此必须进行某种条件分析。如果您需要更多信息,请告诉我!

,例如,我在1000小时时有一个轮胎,然后我随机生成了Weibull失败时间,并应用了这些时间:

PRED_FAIL_TIME= RWEIBULL(1,Shape = 1.09,比例= 2750)

LLES说,这给了我1500时故障时间的结果。我最初的思考过程是为我的整个数据集做到这一点,并从故障时间中减去当前小时数: 1500-1000 = 500小时,因此轮胎有大约500个小时直到失败。但是,如果我的预测失败时间小于我目前的时间,例如:

PRED_FAIL_TIME= RWEIBULL(1,Shape = 1.09,比例= 2750)

现在说我随机预测的失败时间是500小时,而组件小时为1000,那么我该如何应用,我认为不仅添加它是合适的。 任何洞察力都会很棒!

如果我理解正确,您正在寻找故障时间的预期价值,因为轮胎已经生存了一段时间x。我们可以通过将平均所有时间的平均值大于x加权的所有时间的平均值。也就是说,

rstudio forecasting survival-analysis weibull ecdf
1个回答
0
投票

f(x)是weibull pdf,而f(x)是weibull cdf。我们可以使用R:中的数值集成来评估这一点 \frac{1}{F(\infty)-F(x)}\int_x^{\infty}f(t) t \cdot dtx <- 1000 k <- 1.09 l <- 2750 integrate( \(t) dweibull(t, k, l) * t, lower = x, upper = Inf )$value / (1 - pweibull(x, k, l)) #> [1] 3514.953

这也是该积分不可或缺的封闭式解决方案。尽管我没有检查,但这可能会更快。现在,我对集成不太好,但是Wolfram Alpha告诉我,积分(不包括标准化常数)等于

lo,看, \lambda \cdot \Gamma\left(1 + \frac{1}{k}, \left(\frac{x}{\lambda}\right)^k\right)l * pracma::incgam((x / l)^k, 1 + 1 / k) / (1 - pweibull(x, k, l)) #> [1] 3514.953

我们还可以通过从您的分布中绘制许多值,并平均vath

x:

set.seed(2025)
sim <- rweibull(10^6, k, l)
mean(sim[sim > x])

#> [1] 3510.745

您已经注意到,您需要从此值中减去x才能获得预期的时间apremaind.


最新问题
© www.soinside.com 2019 - 2025. All rights reserved.