【python】矩阵计算:转置、逆与乘积

465 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

【python】矩阵计算:转置、逆与乘积

矩阵定义

由 m × n 个数aij排成的m行n列的数表称为m行n列的矩阵,简称m × n矩阵。记作:

这m×n 个数称为矩阵A的元素,简称为元,数aij位于矩阵A的第i行第j列,称为矩阵A的(i,j)元,以数 aij为(i,j)元的矩阵可记为(aij)或(aij)m × n,m×n矩阵A也记作Amn。 元素是实数的矩阵称为实矩阵,元素是复数的矩阵称为复矩阵。而行数与列数都等于n的矩阵称为n阶矩阵或n阶方阵。

定义常规矩阵

import numpy as np
from numpy import *

x=array([[1,1,1],[2,2,2]])

print("X:",X2)
print("X[0]:",X2[0])

在这里插入图片描述

定义0矩阵

import numpy as np
from numpy import *

a=zeros(3)
b=zeros((4,3))

#矩阵切片
c=b[1:3,2:4]
print("a:",a)
print("b:",b)
print("c:",c)

在这里插入图片描述

矩阵调用

调用方式含义
X[0]取矩阵X的第0行所有元素
X[0,:]就是取矩阵X的第0行所有元素
X[:,0]取矩阵X所有行的第0列的元素
X[:,m:n]取矩阵X所有行中的第m到n-1列数据(不包含n列)

转置

x=array([[1,1,1],[2,2,2]])
y=x.T #转置

print("y:",y)

在这里插入图片描述

对A求逆矩阵可直接用 B=np.linalg.inv(A),若需要判断是否可逆则见下文:

import numpy as np
from numpy import *

try:
    A = np.array([[1,1],[2,-2]])
    print(A)
    B=np.linalg.inv(A)
except:
    print("矩阵不存在逆矩阵")
else:
    print(B)

在这里插入图片描述 矩阵不存在见下图: 在这里插入图片描述

乘积

点乘

import numpy as np
from numpy import *

x=array([[1,1],[2,2],[2,2]])
x1=array([[1,1,1],[2,2,2]])
A=np.dot(x1,x)
print(A)

在这里插入图片描述

叉乘

直接乘号*