numpy中同时还有提供数学方法来进行对矩阵运算
如matrix = numpy.arrange(3)
A=numpy.exp(matrix)
那么此时就是对matrix求e的多少次幂运算
得到如下结果
ravel函数
可以实现将矩阵变成一个一维向量
例如,将一个二维矩阵通过ravel函数转换成一个一维向量
floor函数
这个函数可以实现将矩阵中的float型实现向下取整功能
numpy中可以对矩阵进行相对应的转置操作
使用matrix.T操作即可实现
vstack功能,能够实现对两个矩阵按行拼接
hstack功能则是按列拼接
这两个函数的传入值为元组传入,元组中含有两个矩阵,以逗号隔开
有拼接就有分割,分割的话采用的是vsplit和hsplit进行完成
例子如下
对矩阵的属性进行转换可以用reshape()函数来进行转换
也可以用shape通过赋值进行直接的转换
如matrix=numpy.arange(12)
B=matrix
此时矩阵matrix和矩阵B是在同一个内存中,
B.reshape(4,3)
print(B is matrix)
返回的是false
若是B.shape=(4,3)
则此时返回的是True
view可以对一个变量进行浅复制,意思是尽管两者的id不同,但是其中的一方发生改变,另外一方也会随之发生改变,用法为
A=matrix.view()
不推荐使用
与之相反,有copy函数可以实现改变其中的一方不改变另外一边的值
用法为A=matrix.copy()
argmax函数可以返回一个行中或者一个列中的最大值所在的序列号
比如matrix=numpy.array([2,3],[3,2])
a=matrix.argmax(axis=0)
表示是按列进行比较
那么a变量中存放的矩阵就应该是
array([1,0])
axis=1则是按行寻找
numpy.tile函数
tile函数是对原矩阵进进行类似的扩充
用法为
a=numpy.array([1,2,3])
B=numpy.tile(a,(3,2))
那么此时B变量中存放的就是矩阵
([3,2,3,2]
[3,2,3,2]
[3,2,3,2])
表示将原来的行数变为3倍,列变成2倍
numpy.sort函数和numpy.argsort函数
numpy.sort函数可以根据axis变量的不同选择行或列进行排序
如
用法为matrix=numpy.sort(matrix,axis=1)
axis=1表示按行排序,axis=0表示按列排序
argsort表示这个中的这个元素在这个矩阵的行或列中排第几
用法为matrix=numpy.argsort(matrix,axis=1)
axis=1表示按行排列,axis=0表示按列