Python numpy矩阵处理运算工具用法汇总


Posted in Python onJuly 13, 2020

numpy是用于处理矩阵运算非常好的工具。执行效率高,因为其底层是用的是C语句

使用numpy,需要将数据转换成numpy能识别的矩阵格式。

基本用法:

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)

名称描述

  • object数组或嵌套的数列
  • dtype数组元素的数据类型,可选,例如:int64,int16,int32,float64等,位数越高,精度越高,但也更耗内存。
  • copy对象是否需要复制,可选
  • order创建数组的样式,C为行方向,F为列方向,A为任意方向(默认)
  • subok默认返回一个与基类类型一致的数组
  • ndmin指定生成数组的最小维度。几维数组,默认0维数组

创建numpy矩阵的其他形式

  • np.zeros((3,4)):创建3行4列值都为0矩阵
  • np.ones((3,4)):创建3行4列值都为1矩阵
  • np.random.random((3,4)):创建3行4列值为0~1随机数
  • np.arange(1,20,5).shape(3,4):创建3行4列维数组,数值从1到20,步长为5
  • np.arange(5) : 创建1维数组,数值从0至4
  • np.empty((3,4)):创建3行4列值为空的矩阵
  • np.linspace(1,10,10):创建1维数组,开始点为 1 ,终止点为 10,数列个数为 10。即元素共10个.[1,2,3,4,5,6,7,8,9.10]

Python numpy矩阵处理运算工具用法汇总

np.sin(a),即计算该矩阵值的sin结果

np.cos(a)

np.tan(a)

arcsin,arccos,和 arctan 函数返回给定角度的 sin,cos 和 tan 的反三角函数。

矩阵a,矩阵b

a+b,代表逐一加法
a/b,代表逐一除法
a-b,代表逐一减法
a*b,代表逐一乘积

  • np.dot(a,b),a.dot(b)则代表矩阵乘法
  • np.argmin(a),最小值的索引
  • np.argmax(a),最大值的索引
  • mean[a]平均值
  • A.mean平均值,只是表达形式不一样,与老版的average是一样的功能
  • median(A),中位数,与平均值一样的数
  • cumsum(A),第两位数的累加,变成一个一维数组
  • diff(A),每两个数进行减法,按行,原行-1
  • notzero(A),返回两个arrage,表示不为0的索引值
  • sort(A),按行从小到大排序
  • transpose(A),矩阵的反向、向转等同于A.T,
  • clip(A,3,9),所有小于3的值,变成3,所有大于9的值,变成9

索引

  • A[1]第一行
  • A[1][1]第1行第1列
  • A[1,1]第1行第1列,与上面一样只是表达形式不一样
  • A[2,:]第2行所有的数据
  • A[:,2]第2列所有的数据
  • A[1,1:2]第1行,从第1列到第2列的数据

遍历

for row in A:
print row

默认迭代行数显示行。

np没有提供按列迭代,需要用些手段,例如将矩阵进行反转遍历即可实现

for column in A.T:
print colum

如果要迭代其项目,则A需要转换成一行序列

for item in A.flag:
print item

另注意A.flatten()返回的也是一个序列,与flag类似。功能一样

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
浅析python 中__name__ = '__main__' 的作用
Jul 05 Python
python中的字典详细介绍
Sep 18 Python
Python基于二分查找实现求整数平方根的方法
May 12 Python
Python实现PS滤镜的旋转模糊功能示例
Jan 20 Python
python中正则表达式的使用方法
Feb 25 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
详解Python requests 超时和重试的方法
Dec 18 Python
python开发准备工作之配置虚拟环境(非常重要)
Feb 11 Python
利用Python+阿里云实现DDNS动态域名解析的方法
Apr 01 Python
python循环输出三角形图案的例子
Nov 22 Python
python如何代码集体右移
Jul 20 Python
Django使用django-simple-captcha做验证码的实现示例
Jan 07 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
Jul 13 #Python
Python使用pyexecjs代码案例解析
Jul 13 #Python
如何在VSCode下使用Jupyter的教程详解
Jul 13 #Python
解决python 虚拟环境删除包无法加载的问题
Jul 13 #Python
利用PyQt5+Matplotlib 绘制静态/动态图的实现代码
Jul 13 #Python
Python使用itcaht库实现微信自动收发消息功能
Jul 13 #Python
解决Pycharm 中遇到Unresolved reference 'sklearn'的问题
Jul 13 #Python
You might like
如何去掉文章里的 html 语法
2006/10/09 PHP
一个用于网络的工具函数库
2006/10/09 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
dedecms函数分享之获取某一栏目所有子栏目
2014/05/19 PHP
PHP实现取得HTTP请求的原文
2014/08/18 PHP
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
jquery lazyload延迟加载技术的实现原理分析
2011/01/24 Javascript
javascript使用百度地图api和html5特性获取浏览器位置
2014/01/10 Javascript
js获取客户端网卡的IP地址、MAC地址
2014/03/26 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
jQuery实现form表单元素序列化为json对象的方法
2015/12/09 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
2015/12/10 Javascript
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
JQuery PHP图片在线裁剪实例
2020/07/27 Javascript
使用JS代码实现点击按钮下载文件
2016/11/12 Javascript
AngularJS实践之使用ng-repeat中$index的注意点
2016/12/22 Javascript
微信小程序 石头剪刀布实例代码
2017/01/04 Javascript
详解angular分页插件tm.pagination二次触发问题解决方案
2018/07/20 Javascript
vue2.0实现的tab标签切换效果(内容可自定义)示例
2019/02/11 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
基于js判断浏览器是否支持webGL
2020/04/18 Javascript
原生JS实现九宫格抽奖
2020/09/13 Javascript
[54:25]Ti4 循环赛第三日LGD vs MOUZ
2014/07/12 DOTA
利用Python中的mock库对Python代码进行模拟测试
2015/04/16 Python
python3.0 模拟用户登录,三次错误锁定的实例
2017/11/02 Python
自适应线性神经网络Adaline的python实现详解
2019/09/30 Python
pytorch模型预测结果与ndarray互转方式
2020/01/15 Python
Python实现获取当前目录下文件名代码详解
2020/03/10 Python
澳大利亚领先的在线机械五金、园艺和存储专家:Edisons
2018/03/24 全球购物
金智子午JAVA面试题
2015/09/04 面试题
资产评估专业学生的自我鉴定
2013/11/14 职场文书
业务经理的岗位职责
2013/11/16 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python