假设我有一些随机随机变量N,和其他一些随机变量X,我想让一个新的复合随机变量Y如下所示。
Y = \sum_{i=1}^{N} X_{i}
其中,X_i是来自与X相同分布的独立和相同分布的随机变量(抱歉,代码块,我的代表太低,无法发布图片)。
所以就密码而言,我会从你的一些事情开始
from sympy import abc, stats, S
N = stats.Geometric(name='N', p=S.One/2)
X = stats.Normal(name='X')
或者我对离散和和随机变量感兴趣的任何分布。我一直在查看文档和示例,但无法找到表示我感
我想要生成正常的随机变量,这是高于零,与西皮或Numpy。我该如何有效地做这件事?
目前,我已经用scipy.stats.norm.rvs()来生成正常的随机变量。然后,使用numpy.where()定位小于零的随机变量。最后,使用一个时间循环来再生正常的随机变量,每次一个元素,直到得到一个大于零的值。下面显示了一个示例代码。但是,这种方法非常慢,特别是对于大型多维数组来说,这个过程必须迭代。
是否已经有我可以使用的函数?或者,怎样才能更有效地解决我所需要的?
测试代码:
import numpy as np
from scipy.stats import norm
numbers = no