numpy中的随机数模块
https://www.cnblogs.com/td15980891505/p/6198036.html
numpy.random模块中提供啦大量的随机数相关的函数。
1 numpy中产生随机数的方法
1)rand() 产生[0,1]的浮点随机数,括号里面的参数可以指定产生数组的形状
2)randn() 产生标准正太分布随机数,参数含义与random相同
3)randint() 产生指定范围的随机数,最后一个参数是元祖,他确定数组的形状
1
2
3
4
5
6
7
8
9
10
11
12
|
import numpy as np from numpy import random as nr #只显示小数点后两位 np.set_printoptions(precision = 2 ) r1 = nr.rand( 3 , 4 ) r2 = nr.randn( 5 , 4 ) r3 = nr.randint( 0 , 10 ,size = ( 4 , 3 )) print r1 print r2 print r3 |
1
2
3
4
5
6
7
8
9
10
11
12
13
|
[[ 0.34 0.51 0.65 0.57 ] [ 0.97 0.16 0.62 0.37 ] [ 0.23 0.78 0.77 0.46 ]] [[ - 0.69 - 1.24 - 0.32 1.07 ] [ 0.05 - 1.97 1.01 - 1.59 ] [ 1.51 - 1.21 1.02 - 0.19 ] [ 1.49 - 0.42 0.64 0.07 ] [ - 0.1 1.11 0.24 - 0.18 ]] [[ 9 6 7 ] [ 1 9 7 ] [ 4 9 6 ] [ 3 9 0 ]] (Pdb) |
2 常用分布
1)normal() 正太分布
2)uniform() 均匀分布
3)poisson() 泊松分布
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ import numpy as np from numpy import random as nr #只显示小数点后两位 np.set_printoptions(precision = 2 ) #第一个参数是均值,第二个参数是标准差 r1 = nr.normal( 100 , 10 ,size = ( 3 , 4 )) print r1 #前两个参数分别是区间的初始值和终值 r2 = nr.uniform( 0 , 10 ,size = ( 3 , 4 )) print r2 #第一个参数为指定的lanbda系数 r3 = nr.poisson( 2.0 ,size = ( 3 , 4 )) print r3 |
1
2
3
4
5
6
7
8
9
10
|
[[ 100.67 98.39 99.36 103.37 ] [ 98.23 95.11 107.57 111.23 ] [ 97.26 75.21 110.4 112.53 ]] [[ 2.42 6.81 9.96 3.15 ] [ 9.28 4.4 7.87 5.19 ] [ 3.47 2.92 4.5 2.58 ]] [[ 3 1 5 0 ] [ 1 0 4 3 ] [ 3 1 2 1 ]] (Pdb) |
3 乱序和随机抽取
permutation()随机生成一个乱序数组,当参数是n时,返回[0,n)的乱序,他返回一个新数组。而shuffle()则直接将原数组打乱。choice()是从指定的样本中随机抽取。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# -*- coding: utf-8 -*- """ Spyder Editor This is a temporary script file. """ import numpy as np from numpy import random as nr #只显示小数点后两位 np.set_printoptions(precision = 2 ) #返回打乱数组,原数组不变 r1 = nr.randint( 10 , 100 ,size = ( 3 , 4 )) print r1 print nr.permutation(r1) print r1 print nr.permutation( 5 ) # 使用shuffle打乱数组顺序 x = np.arange( 10 ) nr.shuffle(x) print x #xhoice()函数从指定数组中随机抽取样本 #size参数用于指定输出数组的大小 #replace参数为True时,进行可重复抽取,而False表示进行不可重复的抽取。默认为True x = np.array( 10 ) c1 = nr.choice(x,size = ( 2 , 3 )) print c1 c2 = nr.choice(x, 5 ,replace = False ) print c2 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
[[ 78 22 43 70 ] [ 46 87 12 32 ] [ 11 56 89 79 ]] [[ 11 56 89 79 ] [ 78 22 43 70 ] [ 46 87 12 32 ]] [[ 78 22 43 70 ] [ 46 87 12 32 ] [ 11 56 89 79 ]] [ 4 1 2 0 3 ] [ 3 4 9 5 8 2 7 0 6 1 ] [[ 4 7 9 ] [ 9 1 7 ]] [ 5 3 2 8 4 ] (Pdb) |
numpy中的随机数模块的更多相关文章
- 【numpy】新版本中numpy(numpy>1.17.0)中的random模块
numpy是Python中经常要使用的一个库,而其中的random模块经常用来生成一些数组,本文接下来将介绍numpy中random模块的一些使用方法. 首先查看numpy的版本: import nu ...
- 在Pycharm中导入第三方模块库(诸如:matplotlib、numpy等)
在Pycharm中导入第三方模块库 一.打开pycharm: 二.点击菜单上的“file” -> “setting”: 三.步骤二完成后出现界面如下所示.选中你的项目(比如thisyan Pro ...
- 【转载】python 模块 - random生成随机数模块
随机数种子 要每次产生随机数相同就要设置种子,相同种子数的Random对象,相同次数生成的随机数字是完全相同的: random.seed(1) 这样random.randint(0,6, (4,5)) ...
- numpy中的np.random.mtrand.RandomState
1 RandomState 的应用场景概述 在训练神经网络时,苦于没有数据,此时numpy为我们提供了 “生产” 数据集的一种方式. 例如在搭建神经网络(一)中的 4.3 准备数据集 章节中就是采用n ...
- Python中生成随机数
目录 1. random模块 1.1 设置随机种子 1.2 random模块中的方法 1.3 使用:生成整形随机数 1.3 使用:生成序列随机数 1.4 使用:生成随机实值分布 2. numpy.ra ...
- Python numpy 中常用的数据运算
Numpy 精通面向数组编程和思维方式是成为Python科学计算大牛的一大关键步骤.——<利用Python进行数据分析> Numpy(Numerical Python)是Python科学计 ...
- Python中的random模块,来自于Capricorn的实验室
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- Python中的random模块
Python中的random模块用于生成随机数.下面介绍一下random模块中最常用的几个函数. random.random random.random()用于生成一个0到1的随机符点数: 0 < ...
- Python 3 中的json模块使用
1. 概述 JSON (JavaScript Object Notation)是一种使用广泛的轻量数据格式. Python标准库中的json模块提供了JSON数据的处理功能. Python中一种非常常 ...
随机推荐
- eclipse开发创建web项目
1.打开eclipse,界面如下: 2.首先配置tomcat,操作:Windows--->perferences 如下: 3.操作:server--->Runtime Environmen ...
- 实现MongoDB读写分离的“读偏好”介绍
在某些情况下,将读请求发送给副本集的备份节点是合理的,例如,单个服务器无法处理应用的读压力,就可以把查询请求路由到可复制集中的多台服务器上.现在绝大部分MongoDB驱动支持读偏好设置(read pr ...
- C# Debug和release判断用法
C# Debug和release判断用法 #if (!DEBUG) Response.Write("DEBUG下运行");#else Response.Write("re ...
- sqlmap 基本应用
sqlmap 基本应用: sqlmap详细命令: -is-dba 当前用户权限(是否为root权限) -dbs 所有数据库 -current-db 网站当前数据库 -users 所有数据库用户 -cu ...
- Linux IO 模型
Linux 中主要有五种IO模式:阻塞IO, 非阻塞IO, IO 多路复用,信号驱动IO和异步IO; 如果从同步非同步,阻塞非阻塞角度来看,又可以分为:同步阻塞IO, 同步非阻塞IO,异步阻塞IO和异 ...
- Servlet是否单例?
1,测试环境: Java SE版本:1.8.0_161(AMD64) Tomcat版本:9.0.7(AMD64) 2,试验 (1)编写HelloServlet. 由于测试代码很简单,此处只列出doGe ...
- Bootstrap -- 文本,背景,其他样式
Bootstrap -- 文本,背景,其他样式 1. 文本样式:展示了不同的文本颜色 使用文本样式: <!DOCTYPE html> <html> <head> & ...
- LeetCode算法题-Trim a Binary Search Tree(Java实现)
这是悦乐书的第284次更新,第301篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第152题(顺位题号是669).给定二叉搜索树以及L和R的最低和最高边界,修剪树以使其所 ...
- DB2增删改不记录日志
第一步:关闭事务自动提交 C:\DB2>db2set DB2OPTIONS=+c +c永久关闭自动提交,-c永久开启自动提交 第二步:表修改为不记录日志 db2 alter table T1 a ...
- spark读写hbase性能对比
一.spark写入hbase hbase client以put方式封装数据,并支持逐条或批量插入.spark中内置saveAsHadoopDataset和saveAsNewAPIHadoopDatas ...