python numpy.random模块中提供啦大量的随机数相关的函数

1. numpy中产生随机数的方法

        1)rand()   产生[0,1]的浮点随机数,括号里面的参数可以指定产生数组的形状

        2)randn()  产生标准正太分布随机数,参数含义与random相同

        3)randint()  产生指定范围的随机数,最后一个参数是元祖,他确定数组的形状

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

 

[[ 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 97]

 [4 96]

 [3 90]]

 

 

 2. 常用分布

        1)normal()  正太分布

        2)uniform()  均匀分布

        3)poisson()  泊松分布

# -*- 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

 

[[ 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 04 3]

 [3 12 1]]

 

 

3. 乱序和随机抽取

  permutation()随机生成一个乱序数组,当参数是n时,返回[0,n)的乱序,他返回一个新数组。而shuffle()则直接将原数组打乱。choice()是从指定的样本中随机抽取。

# -*- 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

        

[[78 22 43 70]

 [4687 12 32]

 [1156 89 79]]

[[11 56 89 79]

 [7822 43 70]

 [4687 12 32]]

[[78 22 43 70]

 [4687 12 32]

 [1156 89 79]]

[4 1 2 0 3]

[3 4 9 5 8 2 7 0 6 1]

[[4 7 9]

 [9 17]]

[5 3 2 8 4]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350964.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

eclipse复制代码连接数据库404_再见,Eclipse ...

点击上方“Java基基”,选择“设为星标”做积极的人,而不是积极废人!源码精品专栏 中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数据库中间件 Sharding-JDBC 和 MyCAT 源码解析作业…

单页vue路由router

Vue.js vue-router 可以很简单的实现单页应用。 <router-link> 是一个组件&#xff0c;该组件用于设置一个导航链接&#xff0c;切换不同 HTML 内容。 to 属性为目标地址&#xff0c; 即要显示的内容。 以下实例中我们将 vue-router 加进来&#xff0c;然后配置组件和路…

python 多线程为什么鸡肋?

什么是全局解释器锁GIL Python代码的执行由Python 虚拟机(也叫解释器主循环&#xff0c;CPython版本)来控制&#xff0c;Python 在设计之初就考虑到要在解释器的主循环中&#xff0c;同时只有一个线程在执行&#xff0c;即在任意时刻&#xff0c;只有一个线程在解释器中运行。对…

usb端点轮询_使用Spring Integration轮询http端点

usb端点轮询如果您想用Spring Integration编写一个流程来轮询HTTP端点并从http端点收集一些内容以进行进一步处理&#xff0c;那有点不直观。 Spring Integration提供了几种与HTTP端点集成的方式- Http出站适配器–将消息发送到http端点 Http出站网关–将消息发送到http端点…

tensorflow下载

以下下载的为tensorflow版本为1.2.1 GPU python3.6 python3.5 https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.2.1-cp35-cp35m-win_amd64.whlhttps://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.2.1-cp36-cp36m-win_amd64.wh…

make时候说找不到makefile_找不到对象,应不应该接受相亲?听听三个过来人怎么说...

找我分享你的故事&#xff0c;点击右上角关注&#xff0c;你就是我的人了&#xff01;相信每一个人都有这样一个愿望&#xff1a;希望在自己感情的世界里面能够遇到一个执子之手&#xff0c;与子偕老的人共度余生。可是不是每个人都能够那么幸运的&#xff0c;那么轻易的就遇上…

Synchronized总结

一、synchronized加锁原理 synchronized可以保证方法或者代码块在运行时&#xff0c;同一时刻只有一个线程可以进入到临界区&#xff0c;同时它还可以保证共享变量的内存可见性。 Java中每一个对象都可以作为锁&#xff0c;这是synchronized实现同步的基础&#xff1a; &#x…

dpkg命令

dpkg命令如果ubuntu要安装新软件&#xff0c;已有deb安装包&#xff08;例如&#xff1a;iptux.deb&#xff09;&#xff0c;但是无法登录到桌面环境。那该怎么安装&#xff1f;答案是&#xff1a;使用dpkg命令。dpkg命令常用格式如下&#xff1a;sudo dpkg -I iptux.deb#查看i…

linux进程间的通信(C): 共享内存

一、共享内存介绍共享内存是三个IPC(Inter-Process Communication)机制中的一个。它允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在进行的进程之间传递数据的一种非常有效的方式。大多数的共享内存的实现&#xff0c;都把由不同进程之间共享的内存安排为同一段…

使用js在桌面上写一个倒计时器_论一个倒计时器的性能优化之路

原文发表于 2018.05.25&#xff0c;搬运自个人博客。引子回顾这半年&#xff0c;扛需求能力越来越强&#xff0c;业务代码也是越写越多。但稍一认真看看这些当时为了满足快速上线所码的东西&#xff0c;问题其实还是不少。这次就从一个简单的计时器说起。现状问题很明显倒计时器…

Vue 导入文件import、路径@和.的区别

***import&#xff1a; html文件中&#xff0c;通过script标签引入js文件。而vue中&#xff0c;通过import xxx from xxx路径的方式导入文件&#xff0c;不光可以导入js文件。 from前的&#xff1a;“xxx”指的是为导入的文件起一个名称&#xff0c;不是指导入的文件的名称&…

python split()

python函数&#xff1a;split() Python中有split()和os.path.split()两个函数&#xff0c;具体作用如下&#xff1a; split()&#xff1a;拆分字符串。通过指定分隔符对字符串进行切片&#xff0c;并返回分割后的字符串列表&#xff08;list&#xff09; os.pa…

windows聚焦图片为什么不更新了_为什么年轻明星都不愿意接周星驰的戏? 林更新道出了事情的真相|周星驰|林更新|喜剧之王|演员...

要说华语电影史上最有成就的喜剧之王&#xff0c;那么大家脑中一定会闪过周星驰的名字&#xff0c;相信在不少60后、70后心目中&#xff0c;都有周星驰的一席之地。《大话西游》、《逃学威龙》、《九品芝麻官》等一系列作品都是非常经典的作品&#xff0c;就算是拿到当下来看都…

多线程多进程解析:Python、os、sys、Queue、multiprocessing、threading

当涉及到操作系统的时候&#xff0c;免不了要使用os模块&#xff0c;有时还要用到sys模块。 设计到并行程序&#xff0c;一般开单独的进程&#xff0c;而不是线程&#xff0c;原因是python解释器的全局解释器锁GIL&#xff08;global interpreter lock&#xff09;&#xff0c;…

练习1

方法一&#xff1a; 统计在一个队列中的数字&#xff0c;有多少个正数&#xff0c;多少个负数&#xff0c;如[1, 3, 5, 7, 0, -1, -9, -4, -5, 8] lists [1, 3, 5, 7, 0, -1, -9, -4, -5, 8]positive 0 negative 0for number in lists:if number > 0:positive 1elif nu…

python sort()、sorted()

python sort、sorted排序 这篇文章主要介绍了python sort、sorted高级排序技巧,本文讲解了基础排序、升序和降序、排序的稳定性和复杂排序、cmp函数排序法等内容. python list内置sort()方法用来排序&#xff0c;也可以用python内置的全局sorted()方法来对可迭代的序列排…

电脑内存占用莫名很高_CPU占用高,电脑莫名卡顿?万能的重启拯救不了就用这3招,妥了!...

大家还记得windows 10 1903推送时发生的大翻车事件吗&#xff1f;那次的更新主要是修复早期版本的Visual Basic 6、VBA和VBScript无反应、远端桌面出现当机黑屏幕等问题&#xff0c;但win10的更新总是“捡了芝麻&#xff0c;丢了西瓜”&#xff0c;解决早期问题而又出现新的问题…

5. 多线程程序如何让 IO 和“计算”相互重叠,降低 latency?

基本思路是&#xff0c;把 IO 操作&#xff08;通常是写操作&#xff09;通过 BlockingQueue 交给别的线程去做&#xff0c;自己不必等待。 例1: logging 在多线程服务器程序中&#xff0c;日志 (logging) 至关重要&#xff0c;本例仅考虑写 log file 的情况&#xff0c;不考…

tomcat web应用_具有可执行Tomcat的独立Web应用程序

tomcat web应用在部署应用程序时&#xff0c;简单性是最大的优势。 您将了解到&#xff0c;尤其是在项目发展且需要在环境中进行某些更改时。 将您的整个应用程序打包到一个独立且自足的JAR中似乎是个好主意&#xff0c;特别是与在目标环境中安装和升级Tomcat相比。 过去&#…

anaconda在ubuntu中添加环境变量

在ubuntu上安装好anaconda后&#xff0c;如果输入conda命令报错&#xff0c;很有可能需要以下修改注册表&#xff08;相当于windows中将路径添加到系统环境变量&#xff09; ~ /anaconda3/bin为.Sh所在home目录路径 在终端输入&#xff1a;sudo gedit ~/.bashrc 打开注册表后…