我目前正在处理一些与单元的安装日期和故障日期相对应的生命周期数据。数据是现场数据,所以我确实有大量的暂停(尚未出现故障的单元)。我想使用 Scipy 统计库对这些数据进行一些 Weibull 分析(例如,将数据拟合到 weibull 曲线并获取分布参数)。我对 Python 和 Scipy 很陌生,所以我找不到将暂停数据包含在任何可用的 Weibull 分布(dweibull、exponweibull、minweibull、maxweibull)中的方法。有没有一种简单的方法来处理悬架?我不想重述轮子,但我很难从我的数据中估计 Weibull 的参数。谁能帮帮我?
非常感谢!
如果我没理解错,那么这需要使用截尾数据进行估算。
没有任何 scipy.stats.distribution 会直接估计这种情况。您需要结合非删失观察的似然函数和删失观察的似然函数。
对于这两部分,您可以使用 scipy.stats.distributions 的 pdf 和 cdf,或者更好的 sf。然后,您可以只使用 scipy 优化来最小化负对数似然,或者如果您也对参数估计的不确定性感兴趣,请尝试使用 statsmodels 中的 GenericLikelihoodModel。
我是一名优秀的程序员,十分优秀!