使用从泊松过程得出的间隔创建向量
Creating vector with intervals drawn from Poisson process
我正在寻找有关如何在 Python 中实施某些统计模型的建议。我有兴趣构建一个 z 值序列 (z_1,z_2,z_3,...,z_n),其中间隔中的跳跃次数 (z_1,z_2]服从参数为lambda(z_2-z_1)的泊松分布
和不相交区间的随机跳跃次数是独立的随机变量。我希望我的分段常量图看起来像下面的两个图像,其中 y 轴是 Y(z),其中 Y(z) 由每个间隔中的 N(0,1) 个随机变量组成。
要构造 z 数据,解决这个问题的最佳方法是什么?我已经尝试通过 np.random.poisson
采样值,然后进行累加和,但对于小强度值,绘制的值会重复。请任何帮助或想法真的很有帮助。谢谢
np.random.poisson
用于对 [z_i, z_j)
中发生的事件计数进行采样。如果您想在事件发生时对其进行采样,那么您只需要指数分布。例如:
import numpy as np
n = 50
z = np.cumsum(np.random.exponential(1/n, size=n))
y = np.random.normal(size=n)
绘制这些(使用 step
in matplotlib)给出类似于您的图的东西:
请注意 1/n
设置了一个“lambda”,因此我们平均期望 [0,1]
内有 n
个点。在这种情况下,我们得到的稍微少一点,所以它过冲了。如果这对您很重要,请随时重新缩放
我正在寻找有关如何在 Python 中实施某些统计模型的建议。我有兴趣构建一个 z 值序列 (z_1,z_2,z_3,...,z_n),其中间隔中的跳跃次数 (z_1,z_2]服从参数为lambda(z_2-z_1)的泊松分布
和不相交区间的随机跳跃次数是独立的随机变量。我希望我的分段常量图看起来像下面的两个图像,其中 y 轴是 Y(z),其中 Y(z) 由每个间隔中的 N(0,1) 个随机变量组成。
要构造 z 数据,解决这个问题的最佳方法是什么?我已经尝试通过 np.random.poisson
采样值,然后进行累加和,但对于小强度值,绘制的值会重复。请任何帮助或想法真的很有帮助。谢谢
np.random.poisson
用于对 [z_i, z_j)
中发生的事件计数进行采样。如果您想在事件发生时对其进行采样,那么您只需要指数分布。例如:
import numpy as np
n = 50
z = np.cumsum(np.random.exponential(1/n, size=n))
y = np.random.normal(size=n)
绘制这些(使用 step
in matplotlib)给出类似于您的图的东西:
请注意 1/n
设置了一个“lambda”,因此我们平均期望 [0,1]
内有 n
个点。在这种情况下,我们得到的稍微少一点,所以它过冲了。如果这对您很重要,请随时重新缩放