Python中NumPy的矩阵与通用函数
作者:生于忧患丶
这篇文章主要介绍了Python中NumPy的矩阵与通用函数,Numpy是python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效的多支持大量的维度数组与矩阵运算,需要的朋友可以参考下
NumPy矩阵
1. 创建
两种函数创建矩阵
matr1 = np.mat("1,2,3;4,5,6;7,8,9") matr2 = np.matrix([[1,2,3],[4,5,6],[7,8,7]]) print(matr1) print(matr2)
bmat 函数合成矩阵
np.bmat("matr1 matr2;matr2 matr1")
2. 运算
矩阵与 数 相 加 减 乘 除 这里只举了与数的相乘。
arr1 = np.ones([3,3]) np.asmatrix(arr1) print(arr1) arr2 = arr1*3 print(arr2)
矩阵 与 矩阵 相加减
arr2[0,1] = 2 arr1[0,1] = 2 print(arr2) arr3 = arr1*arr2 print(arr3)
矩阵对应元素相乘
np.multiply(arr1,arr2)
矩阵特有的属性:
属性 | 说明 |
T | 返回自身的转置 |
H | 返回自身的共轭转置 |
I | 返回自身的逆矩阵 |
A | 返回自身数据的二维数组的一个视图 |
ufunc函数
全称通用函数 是一种能够对数组中所有函数进行操作的函数
四则运算: 加(+) 减(-) 乘(*) 除(/) 幂(**)。数组的四则运算表示对每个数组中的元素分别进行四则运算,所以形状必须相同
比较运算: >、<、==、>=、<=、!=. 比较运算返回结果是一个布尔数组,每个元素为每个数组对应元素的比较结果。
逻辑运算: np.any 函数表示逻辑 ”or“ ,np.all函数表示逻辑”and“.运算结果返回布尔值。
ufunc 函数的广播机制
广播(broadcasting)是指不同形状的数组之间执行算术运算的方式。需要遵循4个原则。
1:让所有输入数组都向其中shape最长的数组看齐,shape中不足的部分都通过在前面加1补齐。
2:输出数组的shape是输入数组shape的各个轴上的最大值。
3:如果各个输入数组的对应轴的长度相同或者其长度为1时,这样的数组之间能够用来计算,否则 出错。
4:当输入数组的某个轴的长度为1时,沿着此轴运算时都用此轴上的第一组值。
到此这篇关于Python中NumPy的矩阵与通用函数的文章就介绍到这了,更多相关NumPy矩阵通用函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!