一文详解np.mat函数

发布时间:2023-05-22

一、np.mat函数是什么?

np.mat函数是一个将数组转换成矩阵的函数,是numpy中的一个基础函数。它可以将一个有序的n维数组转换成一个矩阵,并返回该矩阵的视图,也就是返回一个与原数组共享数据的二维NumPy矩阵。

二、np.mat函数的参数

np.mat函数有以下两个参数:

np.mat(arr, dtype=None)

其中:

  • arr:输入的数组,可以是列表、元组、数组等,必须是2维的。
  • dtype:可选参数,用于设置输出的数据类型。如果不指定,则默认使用输入数据的类型。

三、np.mat函数的返回值

该函数将数组转换成矩阵,并返回该矩阵的视图。 返回值的类型是一个matrix类型,它可以使用和一般数组不同的方式进行索引和切片操作。同时,matrix类型也支持一些和矩阵有关的操作函数,例如计算行列式、逆矩阵、转置等。

四、np.mat函数的使用实例

下面是一个简单的示例,用于将一个2维数组转换成矩阵:

import numpy as np 
a = [[1, 2], [3, 4]]
b = np.mat(a)
print(b)

这段代码中,将一个2行2列的数组转换成矩阵,并打印输出该矩阵。它的输出结果如下:

[[1 2]
 [3 4]]

下面是一个简单的示例,用于计算矩阵行列式:

import numpy as np 
a = [[1, 2], [3, 4]]
b = np.mat(a)
print(np.linalg.det(b))

这段代码中,将一个2行2列的数组转换成矩阵,并计算该矩阵的行列式。它的输出结果如下:

-2.0000000000000004

下面是一个简单的示例,用于计算矩阵的逆矩阵:

import numpy as np 
a = [[1, 2], [3, 4]]
b = np.mat(a)
print(b.I)

这段代码中,将一个2行2列的数组转换成矩阵,并计算该矩阵的逆矩阵。它的输出结果如下:

[[-2.   1. ]
 [ 1.5 -0.5]]

五、np.mat函数的优缺点

1、优点

  1. np.mat函数可以将一个有序的n维数组转换成一个矩阵。
  2. 返回值的类型是一个matrix类型,它可以使用和一般数组不同的方式进行索引和切片操作。
  3. matrix类型也支持一些和矩阵有关的操作函数,例如计算行列式、逆矩阵、转置等。

2、缺点

np.mat函数只适用于2维数组,如果要处理高维数组,则需要使用其他函数。

六、总结

np.mat函数是numpy中的一个基础函数,它可以将一个2维数组转换成矩阵,并返回该矩阵的视图。返回值的类型是一个matrix类型,他可以使用和一般数组不同的方式进行索引和切片操作,同时也支持一些和矩阵有关的操作函数。虽然np.mat函数只适用于2维数组,但是它在处理矩阵运算时比较方便。