NumPy 矩阵库


NumPy包中包含一个Matrix库 numpy.matlib 。该模块具有返回矩阵而不是ndarray对象的函数。

matlib.empty()

matlib.empty() 函数返回一个新的矩阵,而不初始化条目。该功能采用以下参数。

numpy.matlib.empty(shape, dtype, order)
Sr.No. 参数和说明
1 shape
s int 或元组 int 限定新的矩阵的形状
2 Dtype
可选的。输出的数据类型
3 order
C或F

import numpy.matlib
import numpy as np

print np.matlib.empty((2,2))
# filled with random data

它会产生以下输出 -

[[ 2.12199579e-314,   4.24399158e-314]
 [ 4.24399158e-314,   2.12199579e-314]]

numpy.matlib.zeros()

该函数返回填充零的矩阵。

import numpy.matlib
import numpy as np
print np.matlib.zeros((2,2))

它会产生以下输出 -

[[ 0.  0.]
 [ 0.  0.]])

numpy.matlib.ones()

该函数返回填充1的矩阵。

import numpy.matlib
import numpy as np
print np.matlib.ones((2,2))

它会产生以下输出 -

[[ 1.  1.]
 [ 1.  1.]]

numpy.matlib.eye()

这个函数返回一个矩阵,其中对角线元素为1,其他地方为0。该功能采用以下参数。

numpy.matlib.eye(n, M,k, dtype)

哪里,

Sr.No. 参数和说明
1 n
结果矩阵中的行数
2 M
列数,默认为n
3 ķ
对角线索引
4 dtype
输出的数据类型

import numpy.matlib
import numpy as np
print np.matlib.eye(n = 3, M = 4, k = 0, dtype = float)

它会产生以下输出 -

[[ 1.  0.  0.  0.]
 [ 0.  1.  0.  0.]
 [ 0.  0.  1.  0.]])

numpy.matlib.identity()

所述 numpy.matlib.identity() 函数返回给定大小的单位矩阵。单位矩阵是一个所有对角元素均为1的方阵。

import numpy.matlib
import numpy as np
print np.matlib.identity(5, dtype = float)

它会产生以下输出 -

[[ 1.  0.  0.  0.  0.]
 [ 0.  1.  0.  0.  0.]
 [ 0.  0.  1.  0.  0.]
 [ 0.  0.  0.  1.  0.]
 [ 0.  0.  0.  0.  1.]]

numpy.matlib.rand()

所述 numpy.matlib.rand() 函数返回填充有随机值的给定大小的矩阵。

import numpy.matlib
import numpy as np
print np.matlib.rand(3,3)

它会产生以下输出 -

[[ 0.82674464  0.57206837  0.15497519]
 [ 0.33857374  0.35742401  0.90895076]
 [ 0.03968467  0.13962089  0.39665201]]

请注意 ,矩阵总是二维的,而ndarray是一个n维数组。两个对象都是可以相互转换的。

import numpy.matlib
import numpy as np  

i = np.matrix('1,2;3,4')
print i

它会产生以下输出 -

[[1  2]
 [3  4]]

import numpy.matlib
import numpy as np  

j = np.asarray(i)
print j

它会产生以下输出 -

[[1  2]
 [3  4]]

import numpy.matlib
import numpy as np  

k = np.asmatrix (j)
print k

它会产生以下输出 -

[[1  2]
 [3  4]]