请给我生成几何分布的代码
时间: 2024-09-20 14:01:30 浏览: 38
在二维几何内部生成随机分布的点:利用分布函数在二维几何内部生成随机点。-matlab开发
在Python中,我们可以使用numpy库来生成几何分布的随机数。以下是一个简单的例子,展示如何生成指定形状参数(p,成功概率)的几何分布随机变量:
```python
import numpy as np
def generate_geometric_distribution(p, n_samples):
# 函数定义
def geom_rv():
return 0 if np.random.rand() >= p else 1
# 生成n_samples个独立的几何分布随机数
geometric_numbers = [geom_rv() for _ in range(n_samples)]
return geometric_numbers
# 示例用法
success_probability = 0.7 # 设定成功概率
number_of_samples = 1000 # 想要生成的随机数的数量
random_geometric_values = generate_geometric_distribution(success_probability, number_of_samples)
print("生成的几何分布随机数:", random_geometric_values)
```
在这个代码中,我们首先定义了一个内部函数`geom_rv()`,它模拟了成功的条件是随机事件发生,发生的概率是`p`。然后,通过列表推导式生成了`n_samples`个这样的随机数。你可以根据需要改变`success_probability`和`n_samples`的值。
阅读全文