📜  numpy 随机选择 - Python (1)

📅  最后修改于: 2023-12-03 15:18:03.481000             🧑  作者: Mango

numpy随机选择 - Python

在编写 Python 代码时,我们经常会需要从大量数据中随机选择一些数据进行处理。为了方便,我们可以使用 NumPy 库中的随机选择函数。本文将介绍如何使用 NumPy 库的随机选择函数。

安装 NumPy

在使用 NumPy 库之前,需要先安装它。可以使用 pip 命令来安装:

pip install numpy
导入 NumPy

安装完成后,在 Python 代码中导入 NumPy:

import numpy as np
随机选择

NumPy 提供了两个随机选择函数:numpy.random.choice()numpy.random.randint()

numpy.random.choice()

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()

numpy.random.randint() 方法可以生成随机整数。

np.random.randint(low, high=None, size=None, dtype='l')

参数解释:

  • low: 最小值。
  • high: 最大值(不包含),如果不传递此参数,生成的随机数范围为 [0, low)。
  • size: 数组维度,默认为 None。
  • dtype: 返回值的数据类型,默认为 'l'。
示例

接下来我们使用代码示例介绍 NumPy 库的随机选择函数。

numpy.random.choice()
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
numpy.random.randint()
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 库的随机选择函数的介绍。通过这些函数,我们可以轻松地从大量的数据中随机选择数据进行处理。