Numpy---创建多维数组、创建正态分布、创建均匀分布

news2024/11/15 21:51:30

1. 创建一个随机整数的多维数组

np.random.randint(low, high=None, size=None, dtype='l')

参数说明:

low : 最小值

high=None: 最大值

high=None时,生成的数值在【0, low)区间内

如果使用high这个值,则生成的数值在【low, high)区间

size=None: 数组形状, 默认只输出一个随机值

dtype=None: 元素类型

# 随机整数, 范围:[0, 3)
n = np.random.randint(3)
n
1
# 随机整数:一维
n = np.random.randint(3, 10, size=6)
n
array([8, 8, 6, 3, 9, 7])
# 随机整数:二维
n = np.random.randint(3, 10, size=(3, 4))
n

2. 正态分布创建方式

np.random.randn(d0, d1, …, dn)

功能:从标准正态分布中返回一个或多个样本值

np.random.normal(loc=0.0, scale=1.0, size=None)

loc:float 此概率分布的均值(对应着整个分布的中心centre)

scale:float 此概率分布的标准差(对应于分布的宽度,scale越大越矮胖,scale越小,越瘦高)

size:int or tuple of ints 输出的shape,默认为None,只输出一个值

np.random.standard_normal(size=None)

返回指定形状的标准正态分布的数组。

# 生成均值为1.75,标准差为1的正态分布数据,100000000个
x1 = np.random.normal(1.75, 1, 100000000)
# 返回结果:
array([2.90646763, 1.46737886, 2.21799024, ..., 1.56047411, 1.87969135,
0.9028096 ])
# 生成均匀分布的随机数
x1 = np.random.normal(1.75, 1, 100000000)
# 画图看分布状况
# 1)创建画布
plt.figure(figsize=(20, 10), dpi=100)
# 2)绘制直方图
plt.hist(x1, 1000)
# 3)显示图像
plt.show()

# 创建符合正态分布的4只股票5天的涨跌幅数据
stock_change = np.random.normal(0, 1, (4, 5))
stock_change
# 返回结果:
array([[ 0.0476585 , 0.32421568, 1.50062162, 0.48230497, -0.59998822],
[-1.92160851, 2.20430374, -0.56996263, -1.44236548, 0.0165062 ],
[-0.55710486, -0.18726488, -0.39972172, 0.08580347, -1.82842225],
[-1.22384505, -0.33199305, 0.23308845, -1.20473702, -0.31753223]])

3. 均匀分布创建方式

np.random.rand(d0, d1, ..., dn)

返回[0.0,1.0)内的一组均匀分布的数。

np.random.uniform(low=0.0, high=1.0, size=None)

功能:从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.

参数介绍:

low: 采样下界,float类型,默认值为0;

high: 采样上界,float类型,默认值为1;

size: 输出样本数目,为int或元组(tuple)类型,例如,size=(m,n,k), 则输出mnk个样本,缺省时输

出1个值。

返回值:ndarray类型,其形状和参数size中描述一致。

np.random.randint(low, high=None, size=None, dtype='l')

从一个均匀分布中随机采样,生成一个整数或N维整数数组

取数范围:若high不为None时,取[low,high)之间随机整数,否则取值[0,low)之间随机整数。

# 生成均匀分布的随机数
x2 = np.random.uniform(-1, 1, 100000000)
# 返回结果:
array([ 0.22411206, 0.31414671, 0.85655613, ..., -0.92972446,
0.95985223, 0.23197723])
# 画图看分布状况:
import matplotlib.pyplot as plt
# 生成均匀分布的随机数
x2 = np.random.uniform(-1, 1, 100000000)
# 画图看分布状况
# 1)创建画布
plt.figure(figsize=(10, 10), dpi=100)
# 2)绘制直方图
plt.hist(x=x2, bins=1000) # x代表要使用的数据,bins表示要划分区间数
# 3)显示图像
plt.show()

 np.random.random(size=None)

创建一个元素为0~1(左闭右开)的随机数的多维数组

参数说明:

size=None: 数组形状

n = np.random.random(size=(3, 4))
n
array([[0.64398875, 0.13802611, 0.87164531, 0.34115193],
       [0.92695031, 0.53491087, 0.71526585, 0.26283859],
       [0.22628157, 0.9616426 , 0.58961121, 0.33366677]])

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

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

相关文章

Nginx服务——主配置文件-nginx.conf

一、全局配置的6个模块简介 模块说明全局块全局配置,对全局生效events块配置影响 Nginx 服务器与用户的网络连接http块配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置server块配置虚拟主机的相关参数,一个 http 块中可…

SSD源码总结

一、生成默认框 默认框的宽高 默认框的宽高是相对于原图的尺寸计算出来的。 默认框的中心 默认框的中心是相对于特征图的尺寸计算出来的。 二、将真实框分配给默认框 1、区分正负样本 1.1、选取正样本 计算真实框(bboxs)与每个默认框(…

centos安装etcd

方法1:默认安装(不建议) 运行命令 yum install etcd 即可,只是安装的etcd版本较低,一般是 etcd-3.3.11,如下图 手动开启etcd,可以看到etcd服务已经开启来了,如下图 特别注意&#x…

Java开发手册中为什么要求谨慎使用ArrayList中的sublist方法

场景 Java开发手册中对于ArrayList的subList的要求如下: 【强制】ArrayList 的 subList 结果不可强转成 ArrayList,否则会抛出 ClassCastException 异常: java.util.RandomAccessSubList cannot be cast to java.util.ArrayList。 说明&a…

Customizable constraint systems for succinct arguments学习笔记(2)

微软研究中心Srinath Setty、a16z crypto research 和 Georgetown University Justin Thaler、Carnegie Mellon University Riad Wahby 20203年论文《Customizable constraint systems for succinct arguments》。 前序博客有: Customizable constraint systems f…

别小瞧,搬迁网络机房,讲究的可不少

大家好,我的网工朋友 最近围观咱们网工交流群,不少朋友提到机房搬迁这档子事,毕竟嘛,做到这方面项目的概率还是很高的。 别看机房搬迁很简单,其实可讲究了。 随着企业、单位的不断深入发展,机房搬迁&…

【正点原子STM32连载】 第二十六章 USMART调试组件实验摘自【正点原子】STM32F103 战舰开发指南V1.2

1)实验平台:正点原子stm32f103战舰开发板V4 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第二十…

记录搭建hadoop集群的过程

Linux(CentOS-7.6-x64位)基础配置, 虚拟机平台VmWare15 CentOS-7.6-x64镜像下载: https://www.aliyundrive.com/s/72Xg449t6i8 提取码: 32rm VmVare15安装包下载带序列号:VmVare15安装包下载带激活序列号资源-CSDN文库 点击关闭,点击完成&…

NineData,稳定、高效的Redis数据同步解决方案

在 DB-Engines 网站的排名中,Redis 在 Key-value 存储的NoSQL领域连续霸榜多年,是目前最流行的键值对存储数据库,被广泛用于缓存、队列、实时分析等多种高并发的场景中。在生产环境中,我们会遇到对Redis进行版本升级和架构的扩缩容…

vue 自定义el-table穿梭框功能

一、需求描述:前段时间接到一个需求是点击做一个类似穿梭框的表格点击选中功能,弹框的左边是全部数据展示,点击表格行数据可以选中自动增加到右边的已选框,并且可以手动删除、重置选中数据。点击确定后到展示到主页面,…

深入理解Linux虚拟内存管理(四)

系列文章目录 Linux 内核设计与实现 深入理解 Linux 内核(一) 深入理解 Linux 内核(二) Linux 设备驱动程序(一) Linux 设备驱动程序(二) Linux 设备驱动程序(三&#xf…

精选一线企业最佳生产实践,《Apache Doris 用户案例集》重磅发布!

过去的一年势必是 Apache Doris 在发展历程中有着浓墨重彩的一年,凭借对技术创新的执着与用户体验的追求,Apache Doris 已俘获全球范围内超过 2000 家企业的认可,拥有了极为广泛的用户规模、在企业实时数据分析的多种场景中得到广泛应用&…

热门AI通用大模型对比盘点(附论文)

今天我来和大家聊聊通用大模型,垂直领域大模型等整理完了再和大家分享。大家可以先关注一下我,有更新可以立马看见。 本文文末有整理好的通用大模型论文,都是各个大模型的原始论文,强烈建议大模型方向的同学,或者对大…

突破软件交付不可能三角,企业级无代码如何实现卓越交付?

一、VUCA时代下项目交付面临的困境 软件开发或软件项目交付一直以来都存在着“不可能三角”,即成本、效率和质量三者难以兼得。 交付周期长、成本高、满意度低等一直是行业内长期存在的现象,甚至软件交付双方都习以为常。传统项目管理与软件实施过程难…

Niagara—— Texture Sample 与 Particle Subuv 区别

一,Texture Sample 此节点是最基本的采样节点,依据UV坐标来采样Texture; MipValueMode,设置采样的Mipmap Level; None,根据当前Texture大小和物理缩放,自动选择合适的 Mipmap Level &#xff1b…

行为型设计模式03-观察者模式

🧑‍💻作者:猫十二懿 🏡账号:CSDN 、个人博客 、Github 🎊公众号:猫十二懿 观察者模式 1、观察者模式介绍 观察者模式是一种行为型设计模式,也被称为发布-订阅模式,它定…

Hive学习---4、函数(单行函数、高级聚合函数、炸裂函数、窗口函数)

1、函数 1.1 函数简介 Hive会将常用的逻辑封装成函数给用户进行使用,类似java中的函数。 好处:避免用户反复写逻辑,可以直接拿来使用 重点:用户需要知道函数叫什么,能做什么 Hive提供了大量的内置函数,按…

《相信》读后感

近日阅读了蔡磊的《相信》一书,蔡磊先生曾是京东集团副总裁,中国电子发票的推动者。上天给了他优越的智商条件,从上学到工作,前半生几乎顺风顺水、获誉无数,却在初为人父、本该享受家庭幸福的时候,接到突患…

Python字典及用法详解

Python中的字典(Dictionary)是一种无序、可变的数据类型,用于存储键(Key)和值(Value)之间的映射关系。字典是一种高效的数据结构,可以用于快速查找和检索数据。 1.创建字典 可以使…

MobileViT详解:轻型,通用,移动友好的视觉变压器

MobileViT详解:轻型,通用,移动友好的视觉变压器 0. 引言1. 网络结构2. 模型详解2.1 MobileViT Block2.1.1 Local representations2.1.2 Transformers as Convolutions (global representations)2.1.3 Fusion 2.2 MV2 3. 简化版理解4. 总结 0.…