np.random.choice() 是NumPy库中的一个函数,用于从给定的一维数组或可迭代对象中随机抽样。这个函数具有以下参数和功能:

参数

  • a:表示从中抽取随机样本的数组或整数。如果 a 是一个整数,则抽样将从 np.arange(a) 中进行。
  • size:输出样本的大小。默认情况下,返回单个值。你也可以提供一个形状元组来生成多维样本数组。
  • replace:布尔值,表示是否允许替换抽样。如果为 True,则相同的样本可以被多次选中。如果为 False,则不会选择重复样本。默认为 True
  • p:可迭代对象,表示与 a 中的元素相对应的概率。默认情况下,所有元素具有相同的概率被选中。

返回值

  • 返回从 a 中随机选择的样本,大小由 size 参数确定。

示例

从给定列表中随机选择
import numpy as np samples = np.random.choice([1, 2, 3, 4, 5], size=3) # 示例输出:array([3, 5, 1]),实际输出可能不同
从整数范围内随机选择,不放回
samples = np.random.choice(5, size=3, replace=False) # 示例输出:array([4, 2, 0]),实际输出可能不同
指定概率
samples = np.random.choice([1, 2, 3, 4, 5], size=3, p=[0.1, 0.1, 0.1, 0.1, 0.6]) # 示例输出:array([5, 5, 1]),实际输出可能不同

总的来说,np.random.choice() 是一种灵活的随机抽样工具,可以适应许多不同的用例,包括在不放回的情况下从固定集合中抽取样本,或按照指定的概率分布进行抽样。