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处理json数据中的中文
Mar 06 Python
python实现百度关键词排名查询
Mar 30 Python
Python multiprocessing.Manager介绍和实例(进程间共享数据)
Nov 21 Python
Python通过poll实现异步IO的方法
Jun 04 Python
Python实现字符串匹配算法代码示例
Dec 05 Python
python如何把嵌套列表转变成普通列表
Mar 20 Python
Python设计模式之职责链模式原理与用法实例分析
Jan 11 Python
对python 中class与变量的使用方法详解
Jun 26 Python
Python OpenCV之图片缩放的实现(cv2.resize)
Jun 28 Python
Flask框架钩子函数功能与用法分析
Aug 02 Python
解决Pycharm 包已经下载,但是运行代码提示找不到模块的问题
Aug 31 Python
详解matplotlib绘图样式(style)初探
Feb 03 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 mssql 时间格式问题
2009/01/13 PHP
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
php 面向对象的一个例子
2011/04/12 PHP
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
PHP程序级守护进程的实现与优化的使用概述
2013/05/02 PHP
php猜单词游戏
2015/09/29 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
PHP设计模式之抽象工厂模式实例分析
2019/03/25 PHP
JS 统计时间
2021/03/09 Javascript
Ext面向对象开发实践(续)
2008/11/18 Javascript
jQuery选择器全面总结
2014/01/06 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
jquery模拟LCD 时钟的html文件源代码
2014/06/16 Javascript
Javascript中使用A标签获取当前目录的绝对路径方法
2015/03/02 Javascript
ECMAScript中函数function类型
2015/06/03 Javascript
Angularjs中使用Filters详解
2016/03/11 Javascript
如何消除inline-block属性带来的标签间间隙
2016/03/31 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
2016/04/27 Javascript
JavaScript的Vue.js库入门学习教程
2016/05/23 Javascript
详解nodeJS中读写文件方法的区别
2017/03/06 NodeJs
AngularJS 支付倒计时功能实现思路
2017/06/05 Javascript
使用jQuery实现动态添加小广告
2017/07/11 jQuery
理解javascript async的用法
2017/08/22 Javascript
React-Native之定时器Timer的实现代码
2017/10/04 Javascript
详解es6超好用的语法糖Decorator
2018/08/01 Javascript
详解Vue2.0组件的继承与扩展
2018/11/23 Javascript
微信小程序-form表单提交代码实例
2019/04/29 Javascript
jQuery实现的移动端图片缩放功能组件示例
2020/05/01 jQuery
关于vue 项目中浏览器跨域的配置问题
2020/11/10 Javascript
[46:27]DOTA2上海特级锦标赛主赛事日 - 1 胜者组第一轮#2LGD VS MVP.Phx第一局
2016/03/02 DOTA
Python实现的tab文件操作类分享
2014/11/20 Python
使用Windows批处理和WMI设置Python的环境变量方法
2019/08/14 Python
倩碧澳大利亚官网:Clinique澳大利亚
2019/07/22 全球购物
Python基础详解之邮件处理
2021/04/28 Python
一文弄懂MySQL中redo log与binlog的区别
2022/02/15 MySQL
【海涛教你打DOTA】剑圣第一人称视角解说
2022/04/01 DOTA