问题
执行矩阵和线性代数运算,比如矩阵乘法、寻找行列式、求解线性方程组等等。
解决方案
NumPy 库有一个矩阵对象可以用来解决这个问题。
矩阵类似于数组对象,遵循线性代数的计算规则。矩阵的一些基本特性,示例:
import numpy as np
m = np.matrix([[1,-2,3],[0,4,5],[7,8,-9]])
n = np.matrix([[2],[3],[4]])
print(m)
[[ 1 -2 3]
[ 0 4 5]
[ 7 8 -9]]
print(m.T)
[[ 1 0 7]
[-2 4 8]
[ 3 5 -9]]
print(m.I) # Return inverse
[[ 0.33043478 -0.02608696 0.09565217]
[-0.15217391 0.13043478 0.02173913]
[ 0.12173913 0.09565217 -0.0173913 ]]
print(n)
[[2]
[3]
[4]]
print(m * n)
[[ 8]
[32]
[ 2]]
讨论
很显然线性代数是个非常大的主题,已经超出了本节能讨论的范围。 如果你需要操作数组和向量的话, NumPy
是一个不错的入口点。 可以访问 NumPy
官网 http://www.numpy.org 获取更多信息。