Python中numpy库中常用函数总结,包含seed(),RandomState(),rand(),randn(),randint(),random_integers(),choice()等

Python的第三方库numpy库中提供了random函数来实现产生数据的功能

目录

1、首先看一下random类下的所有功能

import numpy as np 可以避免每次输入numpy的麻烦

2、numpy.random.seed()与numpy.random.RandomState()

3、numpy.random.rand()

4、numpy.random.randint()

5、numpy.random.random_integers()

6、numpy.random.random_sample()

7、numpy.random.choice()

1、首先看一下random类下的所有功能

方法:输入'np.random.'(注意最后的点),然后点击Tab键

import numpy as np 可以避免每次输入numpy的麻烦

2、numpy.random.seed()与numpy.random.RandomState()

作用:使每次随机生成数一样

输入:一个数字

怎么理解呢?举个例子,系统会预先产生好几组随机数序列,如果输入了 np.random.seed(2),系统会调出第2组随机数序列,从其中依次挑出来N个你需要的数,如本例中,在第2组随机序列中从头开始挑选,先挑出5个随机数,再依次挑出来3个数。当我第二次输入 np.random.seed(2),系统会重新调出第2组随机数序列,而这次我先挑出来4个,依次挑出来5个,发现第一次挑出来的8个数,和我第二次挑出来的9个数的前8个是一样的。

numpy.random.RandomState()用法同理

3、numpy.random.rand()

作用:以给定的形状创建一个数组,并在数组中加入在[0,1]之间均匀分布的随机样本。

输入:你所需要的数据的size,例:如果需要2乘3的数组,则输入2,3

4、numpy.random.randint()

语法:numpy.random.randint(low,high=None,size=None,dtype)

作用:生成在半开半闭区间[low,high)上离散均匀分布的整数值;若high=None,则取值区间变为[0,low)

注:简单记法:int表示整型,所以产生整数

输入:最少输入一个数字,size默认为1

例子1:只输入一个数字

例子2:输入数字和尺寸

如图,输入必须符合语法,即‘size=’不可以缺少

以上俩个例子没有指定high值,所以输出都是【0,5)的数值

例子3:np.random.randint(5,high=10,size=(2,3))

5、numpy.random.random_integers()

语法:numpy.random.random_integers(low,high=None,size=None)

作用:生成闭区间[low,high]上离散均匀分布的整数值;若high=None,则取值区间变为[1,low]

输入同4

例子1:常规用法

即high这个关键词可以省略。

例子2:[1,5]上的数组

例子3:[5,10]上的数组

这里的警告指的是random_integers(5,high=10) = randint(5,high = 10+1),即[5,10]中的整数 = [5,11)中的整数

6、numpy.random.random_sample()

语法:numpy.random.random_sample(size=None)

同作用函数:numpy.random.random() ;

                     numpy.random.ranf()

                     numpy.random.sample()用法及实现都与它相同

作用:以给定形状返回[0,1)之间的随机浮点数(半开半闭区间)

7、numpy.random.choice()

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

作用:(1)若a为数组,则从a中选取元素;

           (2)若a为单个int类型数,则选取range(a)=0:a-1中的数

           (3)size为挑选出来的数据的形状

           (4)replace是bool类型,为True,则选取的元素会出现重复;反之不会出现重复

           (5)p为数组,里面存放选到每个数的可能性,即概率

例子1:从range(5)即0 1 2 3 4 中选出2*2的数组,因为replace默认为True,所以发生了重复

例子2:设置不可重复

例子3:设置概率

第一条语句中0 1 2 3 4 中挑出4的概率为0,所以结果没有4

第二条语句中0 1 2 3 4 中挑出1的概率为0,所以结果没有1

由于设置了不可以重复,且只有三个数据有被抽中的概率,所以发生了语法错误。

以上就是几种random类下的函数。

欢迎点赞收藏!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值