numpy random模块



  • numpy.random.random() 生成随机浮点数

    默认为生成一个随机的浮点数,范围在0.0-1.0之间,也可以通过参数size设置返回数据的size

    >>>import numpy as np
    >>>n=np.random.random()
    >>>print(n)
    
    0.429489486421
    
    # 设置参数size
    >>>import numpy as np
    >>>n=np.random.random(size=(3,2))
    >>>print(n)
    
    [[ 0.32018625  0.22410508]
     [ 0.57830333  0.74477335]
     [ 0.08333105  0.48533304]]
    

    numpy.random.randint() 产生随机数

    随机生成一个整数int类型,可以制定整个整数的范围

    >>>import numpy as np
    >>>print(np.random.randint(8))
    >>>print(np.random.randint(5, size=3))
    >>>print(np.random.randint(6, size=(3, 2)))
    
    4
    [1 1 3]
    [[2 4]
     [5 4]
     [3 0]]
    
    # 指定范围
    >>>import numpy as np
    print(np.random.randint(low=5, high=10, size=3)
    
    [7 5 5]
    

    numpy.random.normal() 高斯分布随机数

    API: normal(loc=0.0, scale=1.0, size=None)</br>
    loc:均值,scale:标准差,size:抽取样本的size

    >>>import numpy as np
    >>>n = np.random.normal(loc=0.0, scale=1.0, size=(2, 3))
    
    [[-0.15040995 -0.43780718 -0.22292445]
     [-0.89388124 -0.39465164  0.24113838]]
    

    numpy.random.randn() 标准正态分布随机数

    numpy.random.randn(d0, d1,...,dn):</br>
    从标准正态分布中返回一个(d0d1...*dn)维样本值

    >>>import numpy as np
    >>>print(np.random.randn(4, 2))
    
    [[-1.88753851 -2.54412195]
     [ 0.51856343 -1.07733711]
     [ 1.05820592 -0.23889217]
     [ 0.73309062  0.42152066]]
    

    numpy.random.rand() 生成[0, 1)间随机数

    用法同numpy.random.randn()

    numpy.random.shuffle() 随机打乱序列

    将序列的所有元素随机排序(传入参数可以是一个序列或者元祖)

    >>>import numpy as np
    >>>x = range(0, 8, 1)
    >>>print(x)
    >>>np.random.shuffle(x)
    >>>print(x)
    
    [0, 1, 2, 3, 4, 5, 6, 7]
    
    [2, 3, 5, 4, 1, 7, 0, 6]
    

    numpy.random.choice() 随机选取序列的一个元素

    >>>import numpy as np
    >>>print(np.random.choice(['a', 'b', 'c', 'd', 'e'])
    
    c
    
    # 输出6个小于5的元素
    >>>print(np.random.choice(5, 6))
    
    [2 3 3 3 1 2]
    
    # 每个条目出现的概率。如果没有,假设样本在A中的所有条目都具有均匀分布
    >>>import numpy as np
    >>>print np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0])
    
    [0 3 2]
    

    numpy.random.RandomState() 制定种子值

    numpy.random.RandomState()指定种子值(指定种子值是为了使同样的条件下每次产生的随机数一样,避免程序调试时由随机数不同而引起的问题) </br>
    如不设置种子值时,np.random.randint(8)可能产生0-7内的任意整数,且每次产生的数字可能是任意一种.
    而设置种子值后,np.random.RandomState(0).randint(8)可能产生0-7内的任意整数,但种子值不变时每次运行程序产生的数字一样.


 

Copyright © 2018 bbs.dian.org.cn All rights reserved.

与 Dian 的连接断开,我们正在尝试重连,请耐心等待