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网络编程示例(客户端与服务端)
Apr 24 Python
Python中optionParser模块的使用方法实例教程
Aug 29 Python
Python计算两个日期相差天数的方法示例
May 23 Python
使用Python的Django和layim实现即时通讯的方法
May 25 Python
PyQt打开保存对话框的方法和使用详解
Feb 27 Python
python中sort和sorted排序的实例方法
Aug 26 Python
Python3搭建http服务器的实现代码
Feb 11 Python
浅谈pytorch池化maxpool2D注意事项
Feb 18 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
Nov 01 Python
Python爬虫自动化爬取b站实时弹幕实例方法
Jan 26 Python
python3实现无权最短路径的方法
May 12 Python
Pytorch中的数据集划分&正则化方法
May 27 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
PHP 数组教程 定义数组
2009/10/23 PHP
php生成复杂验证码(倾斜,正弦干扰线,黏贴,旋转)
2018/03/12 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
javascript各浏览器中option元素的表现差异
2011/04/07 Javascript
『jQuery』.html(),.text()和.val()的概述及使用
2013/04/22 Javascript
jQuery+JSON+jPlayer实现QQ空间音乐查询功能示例
2013/06/17 Javascript
js的window.showModalDialog及window.open用法实例分析
2015/01/29 Javascript
浅谈Javascript 数组与字典
2015/01/29 Javascript
jquery中EasyUI使用技巧小结
2015/02/10 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
手机端页面rem宽度自适应脚本
2015/05/20 Javascript
javascript实现禁止鼠标滚轮事件
2015/07/24 Javascript
详解JavaScript表单验证(E-mail 验证)
2016/03/31 Javascript
Node.js制作简单聊天室
2017/01/12 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
在vue-cli搭建的项目中增加后台mock接口的方法
2018/04/26 Javascript
vue引入js数字小键盘的实现代码
2018/05/14 Javascript
微信小程序调用摄像头隐藏式拍照功能
2018/08/22 Javascript
node.js使用http模块创建服务器和客户端完整示例
2020/02/10 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
[02:27]刀塔重生降临
2015/10/14 DOTA
整理Python中的赋值运算符
2015/05/13 Python
Python实现发送与接收邮件的方法详解
2018/03/28 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
PyTorch 普通卷积和空洞卷积实例
2020/01/07 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
2020/06/03 Python
DNA测试:Orig3n
2019/03/01 全球购物
双创工作实施方案
2014/03/26 职场文书
优秀应届生求职信
2014/06/16 职场文书
班级文化标语
2014/06/23 职场文书
董事长助理工作总结2015
2015/07/23 职场文书
小学一年级班主任工作经验交流材料
2015/11/02 职场文书
Python如何使用logging为Flask增加logid
2021/03/30 Python
关于python类SortedList详解
2021/09/04 Python