Python: numpy中random子模块常见用法的总结

一、前言

    python的random功能是我们常常需要用到的,除了python中random模块之外,numpy模块中也有random子模块,相比较之下,np.random有更多的函数支持。

二、np.random中的方法

1.给出单个随机数

1.1给出一个范围是[0.0,1.0),服从均匀分布,浮点型的随机数
    print(np.random.random())
    print(np.random.rand())

1.2给出一个指定范围[low,high),服从均匀分布,浮点型的随机数
    print(np.random.uniform(low=0.0,high=10.0))    #此函数中low默认为0.0,high默认为1.0

1.3给出一个指定范围[low,high), 服从离散均匀分布,整数类型的随机数
    print(np.random.randint(low=1,high=100))       #此函数中必须指定low

1.4给出一个服从mu=0,sigma=1 的标准正态分布,浮点型的随机数

    print(np.random.randn())    # n是normal的意思

2.给出多个随机数

2.1指定形状,范围是[0.0,1.0),服从均匀分布,浮点型的随机数
    print(np.random.random(size=(5,5)))
    print(np.random.rand(5,5))


2.2 指定形状,指定范围,服从均匀分布,浮点型的随机数
# 如果low,high都赋值,范围是[low,high) if high > low else [high, low)
# low默认为0.0,hight默认为1.0
    print(np.random.uniform(low=1.0,high=10.0,size=(5,5)))


2.3指定形状,指定范围,服从离散均匀分布,整数类型的随机数
# 如果low,high都赋值,范围是[low,high)
# 如果只指定low, 范围是[0,low),low不能为负数
# low必须指定,high默认为None
    print(np.random.randint(low=1,high=10,size=(5,5)))


2.4指定形状,mu=0,sigma=1 的标准正态分布,浮点型的随机数
    print(np.random.randn(5,5))              # n是normal的意思
    print(2.5*np.random.randn(5,5)+2)    #生成mu=2,sigma=2.5的随机数

三、random模块中相对应的方法

 自带random模块方法比较少,只能生成单个随机数

import random
# 生成随机浮点数,取值范围[0,1)
print(random.random())

#范围是[1,3]
print(random.randint(1,3))

# 给出一个服从mu=0,sigma=1 的标准正态分布,浮点型的随机数
print(random.normalvariate(0,1))
原创文章 26 获赞 33 访问量 1900

猜你喜欢

转载自blog.csdn.net/qq_40765537/article/details/105803058