numpy.random.choice

方法声明

numpy.random.choice(a, size=None, replace=True, p=None)

方法描述:用于生成一个或者多个随机数;
参数描述:

  1. a:为一个ndarray类型的数组,数组元素必须为整型数据,用于随机生成数据时从a中抽取数字;也可以为一个整数,表示一个从0到该整数的数组;
  2. size:表示抽取几个数,默认抽取1个数;
  3. replace:为一个布尔值,表示抽取之后是否还放回;为True则放回,为False则不放回;
  4. p:表示a数组长度对应的每个元素被抽取的概率,如果不指定,则每个元素被抽取的概率相等;需要注意的是,如果要指定每个元素被抽取的概率,那么p数组的所有概率值和必须为1,否则会报错;

    实例

    ```python import numpy as np

if name == “main“:

  1. # 从[0, 1, 2, 3, 4, 5]中随机选取5个数,每个数选择的概率为[0.1, 0.2, 0.3, 0.3, 0.1],抽取不放回
  2. print(np.random.choice(a=5, size=5, replace=False, p=[0.1, 0.2, 0.3, 0.3, 0.1]))
<a name="sQYDm"></a>
## numpy.random.shuffle
<a name="R8XjG"></a>
### 方法声明
> shuffle(x)

方法描述:用于随机打乱数据<br />参数描述:

1. x:需要被打乱的数据,其类型需要为:array、list or mutable sequence
<a name="tXvZ3"></a>
### 实例
```python
import numpy as np

if __name__ == "__main__":
    # 将传入的数组元素的顺序进行随机打乱
    myarr = np.arange(10)
    print(myarr)
    np.random.shuffle(myarr)
    print(myarr)

输出结果:

[0 1 2 3 4 5 6 7 8 9] [6 4 3 1 7 5 0 8 9 2]