我有一个std::vector<double>
或随机数[0,1]。(如何(我可以使用标准库将其转换为特定(例如威布尔(分布(使用分布的累积分布(吗
需要明确的是:我没有标准库所认为的";发电机";(我没有operator()
返回整数的类(。我已经有了一个随机双[0,1]的列表,并且只想使用不同分布的累积密度函数(例如威布尔(的标准库实现。
不,没有迭代技术就不行。
标准库并不是一个数学包。为了将[0,1(中的统一绘图(如果幸运的话,可能是[0,1](转换为您的分布,您需要所需分布的分位数函数,而标准库没有指定这些函数。注意,分位数函数是累积分布函数的逆函数。
在过去遇到过这个问题之后,我求助于Boost分布中的函数。
我没有标准库所认为的"发电机";(I没有运算符((返回整数的类(
所以做一个吧!
一个小类,它读取你的随机数列表,然后输出"0";下一个";调用((时的一个。