a:一维数组或者int型变量,如果是数组,就按照里面的范围来进行采样,如果是单个变量,就对np.arange(a)进行采样。
size:int 或 tuple;可选参数; 确定了输出的shape. 如果给定的是(m, n, k), 那么 m * n * k 个采样点将会被采样. 默认为零,也就是只有一个采样点会被采样回来。
replace : 布尔参数;可选参数 ;决定采样中是否有重复值
p :一维数组;可选参数 ;对应着a中每个采样点的概率分布,如果没有标出,则使用标准分布
代码:
import numpy as np
a=[2,5,8,1,0]
p=[1,0,0,0,0]#和要是1
b_1=np.random.choice(a,3)
b_2=np.random.choice(8,(2,3))
b_3=np.random.choice(a,3,p=p)
b_4=np.random.choice(a,3,replace=False)