Python矩阵,如何用python进行矩阵运算
矩阵的点乘以numpy为单位,用*号对矩阵进行逐元素乘积。
我们熟悉矩阵点乘,用dot函数。
举个栗子:
Numpy as npx=np.array ([[1,2],[2,3]]) # 2 * 2 matrix y=np.array([[4,5],[6,7]]) # 2*2 matrix print(x * y) #元素乘元素# [[4
另外,事情一旦涉及一维数组,就会变得奇怪。
按照一贯的思路,一维数组应该是一个1行号1列号的矩阵。
但是,在计算点乘时,好像不是这样……`的
导入numpy为npx=np.array ([[1,2,3],[4,5,6]]) # 2 * 3矩阵y=np.array([1,2,3]) #一维数组y _ 1=np.array ([[1],[2],)Y) # [14 32] print (np.dot (x,y _ 1)) # [[14] # [32]]在这个栗子中,操作的是一维数组[1,2,3]
总而言之:
一个矩阵和一个适当长度的一维数组的矩阵乘积,结果是一个一维数组。
矩阵numpy.linalg的转置、求逆、行列式、特征值有标准的矩阵分解函数集。包括求逆和行列式等常见运算。
X.t:返回X的转置inv(X):返回X的逆矩阵det(X):返回X的行列式eig(X):返回X的特征值和特征向量:
import numpy as NP from numpy . linalg import inv,eig,detx=np.array([[1,2,3],[4,5,6],[7,8,9]]) #三阶方阵trans=x . t #[[147]#[258]#[369]]inverse=inv(x)#[[3.15251974 e15-6.30503948 e15 3.15251977
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。