生成具有所需均值和标准的经验/用户定义的分布



我根据一年的实际需求数据生成了一个需求分布。这种分布是非正态分布或类似于任何理论分布。我使用这种经验需求分布进行模拟研究。

In current empirical distribution:
mean = 1000
std = 600
Coefficient of variation (CV) = 0.6

我想以当前的经验分布模式/形状为基础,生成四个额外的分布。

dist1: Low volume, low variation   -> mean:500, std:150, CV:0.3
dist2: Low volume, high variation  -> mean:500, std:665, CV:1.33
dist3: High volume, low variation  -> mean:2000, std:600, CV:0.3
dist4: High volume, high variation -> mean:2000, std:2660, CV:1.33

这样做的主要目的是研究需求量和需求变化如何影响模拟系统。创建这样的分布(上面的dist1-4(在统计上是否可行,或者我必须更改为正态分布?

您的问题未充分指定,但将适当的线性函数应用于给定分布可能就足够了。

由于 E(aX+b) = aE(X) + bStDev(aX+b) = |a|StDev(X) ,您可以选择ab,以便获得给定的目标参数。

假设您有一个函数f(),它生成的值平均值为 1000,标准差为 600。以下定义将生成具有平均m和标准差s的随机数:

g(m,s) =  (s/600)*f()+m-5*s/3

R 中的快速测试:

> f <- function() rnorm(1,1000,600) #mock empirical f()
> g <- function(m,s) (s/600)*f()+m-5*s/3
> x <- replicate(1000,g(2000,300))
> mean(x)
[1] 1988.719
> sd(x)
[1] 300.7044

最新更新