numpy.random.rand()/randn()/randint()/normal()/choice()/RandomState()
这玩意用了很多次,但每次用还是容易混淆,今天来总结mark一下~~~
1. numpy.random.rand(d0,d1,...,dn)
生成一个[0,1)之间的随机数或N维数组
np.random.rand(2) #生成两个[0,1)之间的数
[0.6555729 0.76240372]
np.random.rand(2,2) #生成2行*2列的矩阵
[[0.58360206 0.91619225]
[0.78203671 0.06754087]]
2. numpy.random.randn(d0,d1,...,dn)
生成一个[0,1)之间的随机浮点数或N维浮点数组
正态分布
np.random.randn(2) #生成两个[0,1)之间的浮点数
[-0.03609815 0.25591596]
np.random.randn(2,2) #生成2行*2列的矩阵
[[-0.3021947 -0.37880516]
[-1.84794341 -1.27301629]]
3. numpy.random.randint(low,high=None,size=None,dtype='1')
生成一个整数或N维整数数组
若high不为None时,取[low,high)之间随机整数,否则取值[0,low)之间随机整数,且high必须大于low;dtype只能是int类型
np.random.randint(2)#1个0~2的整数
1
np.random.randint(1,2)#1个1~2的整数
1
np.random.randint(1,5,size=3) #3个1~5的整数
[3 1 2]
4.numpy.random.normal(low,high,size=(4,4))
生成一个标准正态分布的4*4样本值
numpy.random.normal(loc=0.0, scale=1, size=(2, 3))
array([[ 2.36637254, -0.28686707, -0.5227531 ],
[ 0.35879566, 0.70202319, -0.84655717]])
5.numpy.random.shuffle()
随机打乱序列
将序列的所有元素随机排序,传入参数可以是一个序列或者元组
[[-0.15040995 -0.43780718 -0.22292445]
[-0.89388124 -0.39465164 0.24113838]]
6.numpy.random.choice()
随机选取序列的一个元素
可以从序列(字符串、列表、元组等)中随机选取,返回一个列表,元组或字符串的随机项
np.random.choice(['a','b','c','d','e'])
c
np.random.choice(5, 6)#6个小于5的元素
[2 3 3 3 1 2]
np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0])#p:每个条目出现的概率。如果没有,假设样本在A中的所有条目都具有均匀分布。
[0 3 2]
7.numpy.random.RandomState()
指定种子值
numpy.random.RandomState()指定种子值(指定种子值是为了使同样的条件下每次产生的随机数一样,避免程序调试时由随机数不同而引起的问题)
如不设置种子值时,np.random.randint(8)可能产生0-7内的任意整数,且每次产生的数字可能是任意一种.
而设置种子值后,np.random.RandomState(0).randint(8)可能产生0-7内的任意整数,但种子值不变时每次运行程序产生的数字一样.
np.random.RandomState(0).randint(8)#产生随机整数
4
n1 = numpy.random.RandomState(0).random_sample()
n2 = numpy.random.RandomState(0).random_sample(size=(2,3))
0.548813503927
[[ 0.5488135 0.71518937 0.60276338]
[ 0.54488318 0.4236548 0.64589411]]
numpy.random.rand()/randn()/randint()/normal()/choice()/RandomState()的更多相关文章
- Python的numpy库中rand(),randn(),randint(),random_integers()的使用
1.numpy.random.rand() 用法是:numpy.random.rand(d0,d1,…dn) 以给定的形状创建一个数组,并在数组中加入在[0,1]之间均匀分布的随机样本. 用法及实现: ...
- numpy.random.randn()与numpy.random.rand()的区别(转)
numpy中有一些常用的用来产生随机数的函数,randn()和rand()就属于这其中. numpy.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值. n ...
- numpy.random.randn()和numpy.random.rand()
1 numpy.random.rand() (1)numpy.random.rand(d0,d1,…,dn) rand函数根据给定维度生成[0,1)之间的数据,包含0,不包含1 dn表格每个维度 返回 ...
- numpy.random.randn()与numpy.random.rand()的区别
numpy中有一些常用的用来产生随机数的函数,randn()和rand()就属于这其中. numpy.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值. n ...
- [Python] numpy.random.rand
numpy.random.rand numpy.random.rand(d0, d1, ..., dn) Random values in a given shape. Create an array ...
- numpy.random.rand
numpy.random.rand(d0,d1,...,dn ) 给定形状中的随机值. 创建一个给定形状的数组,并用统一分布的随机样本填充它.[0, 1) 参数: d0,d1,...,dn:int,可 ...
- np.random.randn()、np.random.rand()、np.random.randint()
(1)np.random.randn()函数 语法: np.random.randn(d0,d1,d2……dn) 1)当函数括号内没有参数时,则返回一个浮点数: 2)当函数括号内有一个参数时,则返回秩 ...
- numpy.random.randn()与rand()的区别【转】
本文转载自:https://blog.csdn.net/u010758410/article/details/71799142 numpy中有一些常用的用来产生随机数的函数,randn()和rand( ...
- 【转】numpy.random.randn()与rand()的区别
转自: https://blog.csdn.net/u010758410/article/details/71799142 numpy中有一些常用的用来产生随机数的函数,randn()和rand()就 ...
随机推荐
- 【Python系列】Python3获取控制台输入
""" 接收控制台的输入 How old are you? 18 How tall are you ? 180 How much do you weigh? 50 So ...
- intellij2016.03激活
激活的时候采用server的方式 :http://jetbrains.tech
- mFC 橡皮线
一般都用GDI实现: void CXiangpijinView::OnMouseMove(UINT nFlags, CPoint point) { // TODO: Add your message ...
- spring整合websocket通信
1. maven依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns=" ...
- oracle IMP-00085: 为无界导出文件指定了多个输入文件
导入按表导出的数据的时候,提示为无界导出文件指定了多个输入文件 命令如下: imp user/user@database file=e:\test.dmp 提示信息: Import: Release ...
- LeetCode 10 Regular Expression Matching(字符串匹配)
题目链接 https://leetcode.com/problems/regular-expression-matching/?tab=Description '.' Matches any si ...
- C语言递归练习
1.炮弹一样的球状物体,能够堆积成一个金字塔,在顶端有一个炮弹,它坐落在一个4个炮弹组成的层面上,而这4个炮弹又坐落在一个9个炮弹组成的层面上,以此类推.写一个递归函数CannonBall,这个函数把 ...
- 新浪的动态策略灰度发布系统:ABTestingGateway
原文链接:http://www.open-open.com/lib/view/open1439889185239.html ABTesingGateway 是一个可以动态设置分流策略的灰度发布系统,工 ...
- iOS - 使用苹果自带的UIVideoEditController进行视频编辑
UIVideoEditorController类包含了由系统提供的界面,使用户可以交互式的剪切视频.UIVideoEditorController对象处理用户的交互并且提供把编辑后的视频的文件系统路径 ...
- Laravel 查询包括软删除的记录
查询结果包括已被软删除的记录: Model::withTrashed()->get(); 只查询软删除记录: Model::onlyTrashed()->get(); PS:个人博客-La ...