📅  最后修改于: 2023-12-03 15:18:03.481000             🧑  作者: Mango
在编写 Python 代码时,我们经常会需要从大量数据中随机选择一些数据进行处理。为了方便,我们可以使用 NumPy 库中的随机选择函数。本文将介绍如何使用 NumPy 库的随机选择函数。
在使用 NumPy 库之前,需要先安装它。可以使用 pip 命令来安装:
pip install numpy
安装完成后,在 Python 代码中导入 NumPy:
import numpy as np
NumPy 提供了两个随机选择函数:numpy.random.choice()
和 numpy.random.randint()
。
numpy.random.choice()
方法可以从给定的一维数组中随机选择一个值。
np.random.choice(a, size=None, replace=True, p=None)
参数解释:
a
: 一维的数组或者是整数。如果是整数 n,则相当于 np.arange(n)。默认为 None。size
: 数组维度,默认为 None。replace
: 是否可以重复采样。默认为 True。p
: 一维的数组,表示每个元素被选择到的概率。默认为 None。numpy.random.randint()
方法可以生成随机整数。
np.random.randint(low, high=None, size=None, dtype='l')
参数解释:
low
: 最小值。high
: 最大值(不包含),如果不传递此参数,生成的随机数范围为 [0, low)。size
: 数组维度,默认为 None。dtype
: 返回值的数据类型,默认为 'l'。接下来我们使用代码示例介绍 NumPy 库的随机选择函数。
import numpy as np
# 从指定数组中随机选择一个数
arr = [1, 2, 3, 4, 5]
print(np.random.choice(arr))
# 从指定数组中随机选择三个数,可以重复选择
print(np.random.choice(arr, size=3, replace=True))
# 从指定数组中随机选择三个数,不重复选择
print(np.random.choice(arr, size=3, replace=False))
# 从指定数组中随机选择,每个元素的概率不同
print(np.random.choice(arr, p=[0.1, 0.2, 0.3, 0.15, 0.25]))
输出:
2
[2 2 2]
[3 5 1]
3
import numpy as np
# 生成 [0, 10) 的一个随机整数
print(np.random.randint(10))
# 生成 [0, 10) 的一个 2×2 数组
print(np.random.randint(10, size=(2, 2)))
# 生成 [1, 10) 的一个随机整数
print(np.random.randint(1, 10))
# 生成 [1, 10) 的一个 2×2 数组
print(np.random.randint(1, 10, size=(2, 2)))
输出:
3
[[5 5]
[8 0]]
4
[[7 6]
[3 6]]
以上就是 NumPy 库的随机选择函数的介绍。通过这些函数,我们可以轻松地从大量的数据中随机选择数据进行处理。