概述
class uniform_gen(rv_continuous): def _rvs(self): return mtrand.uniform(0.0,1.0,self._size)
scipy.stats有一个错误检查的开销,使界面更加灵活.只要您不为每个绘图的循环调用uniform.rvs,速度差应该是最小的.你可以一次得到所有的随机抽奖,例如(1000万)
>>> rvs = stats.uniform.rvs(size=(10000,1000)) >>> rvs.shape (10000,1000)
这是我刚才写的长的答案:
scipy / numpy中的基本随机数由…创建
Mersenne-Twister PRNG in numpy.random.随机数
在numpy.random中的分布??是在cython / pyrex和相当快.
scipy.stats没有随机数生成器,随机数是
以三种方式获得:
>直接从numpy.random,例如正常,t,…相当快>通过转换其他随机数的随机数可用于numpy.random,也很快,因为这样操作整个数组通用:唯一的通用代生成随机数生成使用ppf(逆cdf)来转换均匀随机数.这是相对较快的,如果有一个明确的表达式ppf,但是如果必须计算ppf,可能非常慢间接的影响.例如,如果只定义了pdf,那么cdf是通过数值积分获得,ppf是通过获得的方程求解器.所以几个发行版很慢.
总结
以上是编程之家为你收集整理的python – 从scipy.stats … rvs和numpy.random的随机抽取之间的区别全部内容,希望文章能够帮你解决python – 从scipy.stats … rvs和numpy.random的随机抽取之间的区别所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧