random.choice()
时间: 2024-02-11 11:02:17 浏览: 128
random.choice()是numpy库中的一个函数,用于从给定的一维数组中随机选择元素。它的语法如下:
```python
numpy.random.choice(a, size=None, replace=True, p=None)
```
参数说明:
- a:一维数组,表示从中进行随机选择的数组。
- size:整数或者整数元组,表示输出的形状。如果为None,则返回单个随机元素;如果为整数n,则返回n个随机元素;如果为元组(m, n, k),则返回一个m行n列的数组,其中每个元素都是一个长度为k的一维数组。
- replace:布尔值,表示是否允许重复选择。如果为True,则允许重复选择;如果为False,则不允许重复选择。
- p:一维数组,表示每个元素被选择的概率。如果为None,则默认为均匀分布。
下面是一个例子,演示了如何使用random.choice()函数:
```python
import numpy as np
# 从给定的一维数组中随机选择一个元素
arr = np.array([1, 2, 3, 4, 5])
random_element = np.random.choice(arr)
print(random_element) # 输出:随机选择的一个元素
# 从给定的一维数组中随机选择三个元素,允许重复选择
random_elements = np.random.choice(arr, size=3, replace=True)
print(random_elements) # 输出:随机选择的三个元素
# 从给定的一维数组中随机选择两个元素,不允许重复选择
random_elements = np.random.choice(arr, size=2, replace=False)
print(random_elements) # 输出:随机选择的两个元素
# 从给定的一维数组中随机选择一个元素,根据给定的概率分布
arr = np.array([1, 2, 3, 4, 5])
probabilities = np.array([0.1, 0.2, 0.3, 0.2, 0.2])
random_element = np.random.choice(arr, p=probabilities)
print(random_element) # 输出:根据概率分布随机选择的一个元素
```
阅读全文