• numpy random


    np.random.seed()用法:

    np.random.seed(5)
    print(np.random.permutation(np.array([i for i in range(9)])))
    np.random.seed(5)
    print(np.random.permutation(np.array([i for i in range(9)])))
    
    
    [2 4 8 7 1 0 5 6 3]
    [2 4 8 7 1 0 5 6 3]
    
    
    np.random.seed(5)
    print(np.random.permutation(np.array([i for i in range(9)])))
    np.random.seed(5)
    print(np.random.permutation(np.array([i for i in range(10,19)])))
    
    [2 4 8 7 1 0 5 6 3]
    [12 14 18 17 11 10 15 16 13]
    

      

     np.random.choice()的用法: 

    import numpy as np
    
    # 参数意思分别 是从a 中以概率P,随机选择3个, p没有指定的时候相当于是一致的分布
    a1 = np.random.choice(a=5, size=3, replace=False, p=None)
    print(a1)
    # 非一致的分布,会以多少的概率提出来
    a2 = np.random.choice(a=5, size=3, replace=False, p=[0.2, 0.1, 0.3, 0.4, 0.0])
    print(a2)
    # replacement 代表的意思是抽样之后还放不放回去,如果是False的话,那么出来的三个数都不一样,如果是
    # True的话, 有可能会出现重复的,因为前面的抽的放回去了。
    

      

     np.random.permutation()的用法:

    随机排列一个序列,返回一个排列的序列

    >>> np.random.permutation(10)
    array([1, 7, 4, 3, 0, 9, 2, 5, 8, 6])
    
    
    >>> np.random.permutation([1, 4, 9, 12, 15])
    array([15,  1,  9,  4, 12])
    
    
    >>> arr = np.arange(9).reshape((3, 3))
    >>> np.random.permutation(arr)
    array([[6, 7, 8],
           [0, 1, 2],
           [3, 4, 5]])
    

      

    np.random.uniform(low=0.0, high=1.0, size=None):

    从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.

    np.random.normal(loc=0.0, scale=1.0, size=None):

    正态分布

    np.random.rand()

    随即生成[0,1)之间的数。

    np.random.randn()

    • randn函数返回一个或一组样本,具有标准正态分布。
  • 相关阅读:
    POJ 2253 Frogger
    POJ 2387
    codevs3981动态最大子段和(线段树)
    P3398仓鼠(LCA)
    codevs1036商务旅行(LCA)
    codevs3728联合权值(LCA)
    P3390矩阵快速幂
    codevs1574广义斐波那契数列
    POJ3070Fibonacci
    P3379最近公共祖先(LCA)
  • 原文地址:https://www.cnblogs.com/zenan/p/8471585.html
Copyright © 2020-2023  润新知