Numpy库基础___五
Numpy数据存取
•NumPy的随机数函数
a = np.random.rand(1,2,3)
print(a)
#[[[0.03339719 0.72784732 0.47527802]
# [0.6456671 0.65639799 0.01300073]]] a = np.random.randn(1,2,3)
print(a)
#[[[ 0.59115211 -0.40289048 1.34532466]
# [-0.04616715 -0.64066822 -1.09722129]]] a = np.random.randint(100,200,(3,4))
print(a)
#[[161 131 187 134]
# [156 114 104 180]
# [182 163 158 121]] #随机数种子,10是给定的种子值
np.random.seed(10)
a = np.random.randint(100,200,(3,4))
print(a)
#[[109 115 164 128]
# [189 193 129 108]
# [173 100 140 136]]
a = np.random.randint(100,200,(3,4))
print(a)
#[[184 199 152 144]
# [173 171 179 144]
# [133 105 197 143]] np.random.shuffle(a)
print(a)
#[[173 171 179 144]
# [133 105 197 143]
# [184 199 152 144]] b = np.random.permutation(a)
#[[173 171 179 144]
# [133 105 197 143]
# [184 199 152 144]]
print(b)
#[[133 105 197 143]
# [173 171 179 144]
# [184 199 152 144]] a = np.random.randint(100,200,(8,))
print(a)
#[131 195 130 165 177 107 197 132] b = np.random.choice(a,(3,2))
print(b)
#[[195 107]
# [177 197]
# [130 107]] b = np.random.choice(a,(3,2),replace=False)
#[[107 130]
# [197 132]
# [195 131]] #加权,元素出现次数越多,被抽取的概率越高
b = np.random.choice(a,(3,2),p=a/np.sum(a))
print(b)
#[[197 130]
# [131 130]
# [131 130]]
u = np.random.uniform(0,10,(3,4))
print(u)
#[[7.49328353 4.35990777 8.19266316 5.02229727]
# [2.21122875 9.61785352 9.90294149 2.44401573]
# [3.88367203 9.22037768 7.87306998 2.00241521]] u = np.random.normal(10,5,(3,4))
print(u)
#[[13.44007699 10.5502136 14.79616224 -2.17381553]
# [10.42238979 10.12351539 2.8561042 16.78322252]
# [11.90679396 6.75343566 8.01259211 14.96874378]] u = np.random.poission(2,(3,4))
print(u)
#[[4 0 1 2]
# [2 2 3 2]
# [0 0 2 3]]
•NumPy的统计函数
a = np.arange(15).reshape(3,5)
print(a)
#[[ 0 1 2 3 4]
# [ 5 6 7 8 9]
# [10 11 12 13 14]]
print(np.sum(a))
#105
print(np.sum(a,axis=0))
#[15 18 21 24 27]
print(np.sum(a,axis=1))
#[10 35 60] print(np.mean(a))
#7.0
print(np.mean(a,axis=0))
#[5. 6. 7. 8. 9.]
print(np.mean(a,axis=1))
#[ 2. 7. 12.] print(np.average(a))
#7.0
print(np.average(a,axis=0,weights=[1,2,3]))
#[ 6.66666667 7.66666667 8.66666667 9.66666667 10.66666667]
a = np.arange(12).reshape(3,4)
print(a)
#[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]] print(np.min(a))
#0 print(np.max(a))
#11 print(np.argmin(a))
#0 print(np.argmax(a))
#11 print(np.unravel_index(10,(4,3)))
#(3,1) print(np.unravel_index(np.argmax(a),(4,3)))
#(3,2) print(np.ptp(a))
#11 print(np.median(a))
#5.5
•NumPy的梯度函数
- np.gradient(f):计算数组f中元素的梯度,当f为多维时,返回每个维度梯度
梯度:连续值之间的变化率,即斜率
X坐标轴连续三个x坐标对应的Y轴值:a,b,c其中b的梯度时(c-a)/2
a = np.random.randint(0,20,(5,))
print(a)
#[ 2 10 11 14 12] print(np.gradient(a))
#[ 8. 4.5 2. 0.5 -2. ]
Numpy库基础___五的更多相关文章
- Numpy库基础___四
Numpy数据存取 •数据的csv文件的存取 只能有效存取和读取一维和二维数据 a = np.arange(100).reshape(5,20) #用delimiter分割,默认为空格 np.save ...
- Numpy库基础___一
ndarray一个强大的N维数组对象Array •ndarray的建立(元素默认浮点数) 可以利用list列表建立ndarray import numpy as np list =[0,1,2,3] ...
- Numpy库基础___三
ndarray一个强大的N维数组对象Array •ndarray的操作 索引 a = np.arange(24).reshape((2,3,4)) print(a) #[[[ 0 1 2 3] # [ ...
- Numpy库基础___二
ndarray一个强大的N维数组对象Array •ndarray的变换 x.reshape(shape)重塑数组的shape,要求元素的个数一致,不改变原数组 x = np.ones((2,3,4), ...
- Numpy库的学习(五)
今天继续学习一下Numpy库,废话不多说,整起走 先说下Numpy中,经常会犯错的地方,就是数据的复制 这个问题不仅仅是在numpy中有,其他地方也同样会出现 import numpy as np a ...
- $python数据分析基础——初识numpy库
numpy库是python的一个著名的科学计算库,本文是一个quickstart. 引入:计算BMI BMI = 体重(kg)/身高(m)^2 假如有如下几组体重和身高数据,让求每组数据的BMI值: ...
- Python基础——numpy库的使用
1.numpy库简介: NumPy提供了许多高级的数值编程工具,如:矩阵数据类型.矢量处理,以及精密的运算库.专为进行严格的数字处理而产生. 2.numpy库使用: 注:由于深度学习中存在大量的 ...
- 数据分析与科学计算可视化-----用于科学计算的numpy库与可视化工具matplotlib
一.numpy库与matplotlib库的基本介绍 1.安装 (1)通过pip安装: >> pip install matplotlib 安装完成 安装matplotlib的方式和nump ...
- numpy库的学习笔记
一.ndarray 1.numpy 库处理的最基础数据类型是由同种元素构成的多维数组(ndarray),简称“数组”. 2.ndarray是一个多维数组的对象,ndarray数组一般要求所有元素类型相 ...
随机推荐
- 使用Docker安装ElasticSearch和可视化界面Kibana【图文教学】
一.前言 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java语言开发的,并 ...
- SpringBoot树获取方法总结
最近项目中有需要获取全国行政区划省-市-区县-乡镇.街道办的树状结构数据,现将自己获取树的方法总结如下,有不到之处,敬请批评指正! 一.全国行政区划数据的整理以及获取 获取地址:https://pan ...
- Spring Boot 热插拔技术应用
对Spring/Spring Boot使用频繁的开发者,应该常见在应用Application上加@EnableXXX类似的注解.其实这个@EnableXXX的注解就是热插拔技术,加了这个就可以启动对应 ...
- 私有化轻量级持续集成部署方案--05-持续部署服务-Drone(上)
提示:本系列笔记全部存在于 Github, 可以直接在 Github 查看全部笔记 持续部署概述 持续部署是能以自动化方式,频繁而且持续性的,将软件部署到生产环境.使软件产品能够快速迭代. 在之前部署 ...
- JAVA8学习——新的时间日期API&Java8总结
JAVA8-时间日期API java8之前用过的时间日期类. Date Calendar SimpleDateFormat 有很多致命的问题. 1.没有时区概念 2.计算麻烦,实现困难 3.类是可变的 ...
- Vue2.0源码学习(6) - 组件注册
组件注册 前言 在 Vue.js 中,除了它内置的组件如 keep-alive.component.transition.transition-group 等,其它用户自定义组件在使用前必须注册.在开 ...
- 树莓派安装docker并使用docker图形化工具portainer
配置环境 系统:Raspbian 11(64位) 设备:树莓派4B 一.安装docker 1.安装 curl -fsSL https://get.docker.com -o get-docker.sh ...
- vue methods中的函数调用时带括号与不带括号的区别
@click='getList(id)',但是为什么有时候明明没有传参的需要,却要加上()呢? 百思不得其解,于是去查阅了相关的资料,意思就是,当不加括号直接调用这个函数是可以直接获取到这个事件对象的 ...
- VS2019下配置OpenGL全过程
一:下载VS2019 官网下载社区版 二:下载GLEW.GLFW 百度网盘地址: 链接:https://pan.baidu.com/s/1Uvz9svdnVRvDXNHjVgApig 提取码:rsgp ...
- [Java]Java入门笔记(二):数据类型、程序结构、数组、控制台输入
二.基本语法 2.1 标识符 定义:给类.方法.变量等起的名字 规则: 可以使用字母(26个英文字母的大小写.各国的一些语言.-).数字.下划线.美元符号: 不能以数字开始(可以$开始): 不能是Ja ...





