NumPy 中包含了一个矩阵库 numpy.matlib,该模块中的函数返回的是一个矩阵,而不是 ndarray 对 象。
1、转置矩阵
import numpy as np
a=np.arange(6).reshape(2,3)
print(a)
# [[0 1 2]
# [3 4 5]]
print(a.T)
# [[0 3]
# [1 4]
# [2 5]]
2、matlib.empty()
返回一个新的矩阵
numpy.empty(shape, dtype, order)
shape: 定义新矩阵形状的整数或整数元组
Dtype: 可选,数据类型
order: C(行序优先) 或者 F(列序优先)
import numpy as np
print(np.empty((4,3),dtype=int))#数据是随机的
# [[ 0 0 858993459]
# [1069757235 0 1070596096]
# [ 0 1071644672 0]
# [1072168960 0 1072693248]]
3、numpy.zeros()
创建一个以
0
填充的矩阵。
4、numpy.ones()
创建一个以
1
填充的矩阵。
import numpy as np
print(np.zeros((3,3)))
# [[0. 0. 0.]
# [0. 0. 0.]
# [0. 0. 0.]]
print(np.ones((3,3)))
# [[1. 1. 1.]
# [1. 1. 1.]
# [1. 1. 1.]]
5、numpy.eye()
返回一个矩阵,对角线元素为
1
,其他位置为零
numpy.eye(N, M,k, dtype)
#注意:n,m为大写,k为小写
N:
返回矩阵的行数
M
:
返回矩阵的列数,默认为
n
k
:
对角线的索引
dtype
:
数据类型
import numpy as np
print(np.eye(N=3,M=3,k=0))
# [[1. 0. 0.]
# [0. 1. 0.]
# [0. 0. 1.]]
print(np.eye(N=3,M=3,k=1))
# [[0. 1. 0.]
# [0. 0. 1.]
# [0. 0. 0.]]
print(np.eye(N=3,M=3,k=1,dtype=int))
# [[0 1 0]
# [0 0 1]
# [0 0 0]]
6、numpy.identity()
返回给定大小的单位矩阵
7、numpy.rand()
创建一个给定大小的矩阵,数据是随机填充的
import numpy as np
print(np.identity(3,dtype=int))
# [[1 0 0]
# [0 1 0]
# [0 0 1]]
print(np.random.randn(3,3))
# [[ 0.56467798 -2.03125485 0.10611268]
# [ 1.61456493 -0.67970768 0.80532401]
# [-0.14927308 2.27253789 -0.35022002]]