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

所属分类: 脚本专栏 / python 阅读数: 2013
收藏 0 赞 0 分享

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]


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类似。功能一样

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

更多精彩内容其他人还在看

pandas的qcut()方法详解

这篇文章主要介绍了pandas的qcut()方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

从列表或字典创建Pandas的DataFrame对象的方法

这篇文章主要介绍了从列表或字典创建Pandas的DataFrame对象的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas.DataFrame的pivot()和unstack()实现行转列

这篇文章主要介绍了pandas.DataFrame的pivot()和unstack()实现行转列,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

pandas中的series数据类型详解

这篇文章主要介绍了pandas中的series数据类型详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas 时间格式转换的实现

这篇文章主要介绍了pandas 时间格式转换的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python中时间、日期、时间戳的转换的实现方法

这篇文章主要介绍了python中时间、日期、时间戳的转换的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

pandas进行时间数据的转换和计算时间差并提取年月日

这篇文章主要介绍了pandas进行时间数据的转换和计算时间差并提取年月日,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法

这篇文章主要介绍了详解将Pandas中的DataFrame类型转换成Numpy中array类型的三种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

python和c语言的主要区别总结

在本篇文章里小编给各位整理了关于python和c语言的主要区别的相关知识帖内容,有需要的朋友们学习阅读下。
收藏 0 赞 0 分享

选择Python写网络爬虫的优势和理由

在本篇文章里小编给各位整理了一篇关于选择Python写网络爬虫的优势和理由以及相关代码实例,有兴趣的朋友们阅读下吧。
收藏 0 赞 0 分享
查看更多