这篇文章主要介绍了Numpy如何实现矩阵运算及线性代数应用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
一、创建矩阵的方法
import numpy as np #,1直接创建 垫=np.mat (“1, 2, 3, 4, 5, 6, 7, 8, 9,) 打印(垫) #,2使用numpy数组创建矩阵 mat2=np.mat (np.arange (10) .reshape (3,3)) 打印(mat2) 3 #,从已有的矩阵中通过bmat函数创建 一个=np.eye (2) B=* 2 mat3=np.bmat (“A  B; B A") 打印(mat3), #类似于拼接
二、矩阵运算
, 2.1随机函数表
mat1=np.mat (np.array ([2 6 5]))
mat2=np.mat (np.array ([2 6 5]))
2.2.1加法np。添加
addresult=np.add (mat1 mat2) 打印(addresult)
2.2.2乘法用
multiresult=np.multiply (mat1 mat2) 打印(multiresult), #数值的乘法 mat3=np.mat (np.arange (6) .reshape (2、3) mat4=np.mat (np.arange (6) .reshape (3 2)) print (“mat3 * mat4 \ n", mat3 * mat4)
2.2.3除法划分
a=np.mat (np.array ((4、5、8))) b=np.mat (np.array ((2、3、5))) # # # # # # # # # # # # # # # # # # # # # # # # #除法 result1=np.divide编写此表达式(a, b) 打印(result1)编写此表达式 #数组除法将结果向下去整 result2=np.floor_divide (a, b) print(“除法向下去整:“,result2) #矩阵直接相除 print(“矩阵直接相除“,a/b) #矩阵取模 print(“矩阵取模,,% b) #返回小数部分 floatResult=np.true_divide (a, b) 打印(floatResult)
垫* * 2,要求垫为方阵,其平方为垫*垫的结果
引用>
mat1 * mat2的结果为mat1 (m, n)的行与mat2(氮、磷)的列乘积组成的新的矩阵(m, p)2.2.4取模模/fmod
import numpy as np mat1=np.mat (np.array ((5、7、9))) mat2=np.mat (np.array ((2、4、3))) #取模运算 result1=np.remainder编写此表达式(mat1 mat2) print(“剩余:“result1)编写此表达式 result2=np.mod (mat1 mat2) 打印(“mod" result2) result3=mat1%mat2 打印(“%”,result3) result4=np.fmod (mat1 mat2) 打印(result4), #模,的正负和被除数相同,与除数无关三、通用函数
1一元函数(ufunc),只接受一个数组,结果返回一个结果数组,
引用>
当然也有返回两个数组的(modf),但是情况很少。
2二元函数(二进制),接受的是两个结果,返回的是一个结果数组3.1一元通用函数
3.1.1图表总说明
import numpy as np 垫=np.mat (np.array ([-10、5、4、3 0 12])) 打印(np.abs(垫),#绝对值 打印(np.fabs(垫),#非复数情况下
3.1.2获取矩阵中各元素的正负‘
#获取矩阵中各元素的正负号 符号=np.sign(垫) 打印(“标志:“签署) #符号:[[1,1,1,1,0,1]]3.1.3整数小数的抽取分离-modf
#将数组中元素的小数和整数部分抽取出来 arr=np.array ([[1.2, 3.34], ,,,[-2.5,6.8]]) arr1 arr2=np.modf (arr) print(“整数部分:“,arr2) print(“小数部分:“,arr1)3.2二元通用函数
3.2.1图表总说明
mat2=np.mat (np.array ([1、2、3、4])) mat3=np.mat (np.array ([2、3、2、3])) result1=np.power编写此表达式(mat2 mat3), # mat2中元素作为底,mat3作为幂 打印(result1)编写此表达式
3.2.3获取两个数组中对应元素的最大/小值,存放到新的数组中权力()
Numpy如何实现矩阵运算及线性代数应用