问题标签 [weibull]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3825 浏览

r - Weibull 分布的置信区间

我有用于执行极值分析(计算回报水平)的风数据。我将R与包“evd”、“extRemes”和“ismev”一起使用。

我正在拟合 GEV、Gumbel 和 Weibull 分布,以估计某个时期 T 的回报水平 (RL)。
对于 GEV 和 Gumbel 案例,我可以使用extRemes::return.level()获得 RL 和置信区间功能。

一些代码:

但是对于 Weibull 案例,我需要一些帮助来生成 CI。

0 投票
1 回答
4266 浏览

r - 如何使用任何变换来缩放/变换 graphics::plot() 轴,而不仅仅是对数(对于 Weibull 图)?

我正在构建一个 R 包以在 R 中显示 Weibull 图(使用graphics::plot)。该图具有对数变换的x轴和 Weibull 变换的y轴(因为缺乏更好的描述)。因此,两参数 Weibull 分布可以在该图上表示为一条直线。

x轴的对数变换就像将log="x"参数添加到plot()or一样简单curve()。如何以优雅的方式提供y轴转换,以便所有与图形相关的绘图都可以在我的轴转换图上工作?为了演示我需要什么,运行以下示例代码:

首先是一个威布尔分布的例子,它带有beta=2一个eta=1000规则的、未转换的图:

情节1

该图对 Weibull 分析毫无用处。这是我当前实现的解决方案,它使用函数转换数据F0inv()并修改绘图的y轴。请注意,我必须F0inv()在所有y轴相关数据上使用。

情节2

这可行,但这不是很用户友好:当用户想要添加注释时,必须始终使用F0inv()

我发现您可以使用ggplot2和缩放来解决我的问题,但除非绝对必要,否则我不想更改为图形包,因为需要重写许多其他代码。

情节3

我认为如果我可以用我自己的动态替换应用对数变换的代码,我的问题就会得到解决。

我试图通过谷歌搜索“R 轴变换”、“R 用户坐标”、“R 轴缩放”来查找更多信息,但没有有用的结果。我发现的几乎所有东西都涉及对数刻度。

我试图研究plot()参数的log="x"工作原理,但相关代码plot.window是用 C 编写的——这根本不是我的强项。

0 投票
2 回答
15354 浏览

r - 使用曲线()绘制 survreg 的生存和危险函数

我有以下 survreg 模型:

我想根据上述估计绘制危险函数和生存函数。
我不想使用predict()pweibull()(如此处介绍的参数生存或此处的SO 问题

我想使用该curve()功能。有什么想法可以做到这一点吗?似乎 survreg 的 Weibull 函数使用了与通常不同的比例和形状定义(并且不同于例如 rweibull)。

更新:我想我真正需要它来表达作为估计函数的危险/生存,Intercept而不使用任何现成的函数。age (+ other potential covariates)Scale*weilbull

0 投票
1 回答
1217 浏览

r - 需要随机样本:具有特定到达间隔时间的 Weibull 分布

我正在使用R,并希望使用rweibull(n, shape, scale = 1).

我有到达率(即 1/interarrival time),但我不知道如何在rweibull函数中使用它。

0 投票
5 回答
6113 浏览

matlab - 在 MATLAB 中从 Weibull 分布生成样本

我正在使用该命令wblrnd(12.34,1.56)获取 100 个不同的值,这些值位于带有这些参数的 Weibull 分布中。

但我希望这 100 个点/值具有与参数给定的分布相同的分布。这不会发生。

基本上我想要得到 100 个值,这些值给我以前的完全相同的分布。

0 投票
1 回答
880 浏览

r - 从 R 中的参数向量模拟 Weibull 分布

我有一个来自 Weibull 分布的 365 个形状参数的向量和一个 365 个比例参数的向量。

如何从 R 中的相应参数模拟 365 个值?

我的问题的背景是:我的日平均风速遵循独特参数的 Weibull 分布。现在,我需要根据数据模拟每日风速。

0 投票
1 回答
199 浏览

r - 使用 for 循环将 Weibull 观测值保存在矩阵中

我编写了代码来使用 for 循环基于 8 个不同的形状参数来模拟 Weibull 值。我想将它保存在 365 x 8 的矩阵中并最终导出到 csv。

我的代码是这样的:

结果是 365 x8,但我注意到它只为每列捕获 k=2。任何人都可以帮助修复代码吗?

非常感谢您提前提供的帮助!

0 投票
2 回答
1870 浏览

r - 使用 R 进行概率转换

我想将一个连续随机变量Xwithcdf F(x)变成一个连续随机变量Ywithcdf F(y)并且想知道如何在 R 中实现它。

例如,对服从正态分布 (X) 的数据执行概率变换,使其符合理想的 Weibull 分布 (Y)。

(x=0 有 CDF F(x=0)=0.5,CDF F(y)=0.5 对应 y=5,然后 x=0 对应 y=5 等等)

0 投票
8 回答
74033 浏览

python - 使用 Scipy 拟合 Weibull 分布

我正在尝试重新创建最大似然分布拟合,我已经可以在 Matlab 和 R 中做到这一点,但现在我想使用 scipy。特别是,我想估计我的数据集的 Weibull 分布参数。

我试过这个:

得到这个:

一个看起来像这样的分布:

使用 Scipy 的 Weibull 分布

exponweib阅读此http://www.johndcook.com/distributions_scipy.html后,我一直在使用。我还尝试了 scipy 中的其他 Weibull 函数(以防万一!)。

在 Matlab(使用分布拟合工具 - 见截图)和 R(同时使用 MASS 库函数fitdistr和 GAMLSS 包)中,我得到的 a(loc)和 b(scale)参数更像 1.58463497 5.93030013。我相信这三种方法都使用最大似然法进行分布拟合。

使用 Matlab 的 Weibull 分布

如果您想尝试一下,我已经在这里发布了我的数据!为了完整起见,我使用的是 Python 2.7.5、Scipy 0.12.0、R 2.15.2 和 Matlab 2012b。

为什么我得到不同的结果!?

0 投票
1 回答
2387 浏览

r - 在 R 中使用 Weibull 的累积分布函数

我必须模拟系统的故障时间,为此我必须使用具有“降低危险率”和“0.7-0.8”形状的 Weibull 分布。我必须为使用从 0 到 1 的随机数的函数生成一个包含 100 个结果的文件。

所以我一直在搜索,我发现了这个 R 函数:

还有其他一些(rweibull,qweibull ...),但我认为这是我必须使用的,因为它是累积分布,正如练习声明所说。问题是我是 R 新手,我真的不知道我必须将哪些参数传递给这个函数。

我猜形状应该是 0.7-0.8,比例为 1。对于 q 参数,我应该创建一个包含 0 到 1 个值的 100 个数字的随机向量吗?如果是这样,任何提示如何做到这一点?还有关于如何将结果数据导出到文件的任何提示?