(提示:本文章的阅读和学习需要有线性代数基础的python小白。)
话不多说,直接上教程。
一、数组维度的转化(一维<--->二维)
1.初始矩阵(一维)
2.一维矩阵转二维矩阵(这里转成3行4列)
3.二维矩阵转一维矩阵
小结:1.一维转二维:reshape(m,n),m为定义的行,n为定义的列
2.二维转一维:ravel()
二、矩阵
1.矩阵的两种输入方式:(这里输入一个3行3列的矩阵)
(可见两种输入方式结果相同)
2.小矩阵合成大矩阵
(1).输入两个2行3列矩阵arr1和arr2:
(2).两个矩阵合成一个大矩阵arr3:
提示:bmat()函数括号内","表示两数组相连在一起,分号";"表示换行,所以此处是[[arr1,arr2],
[arr1,arr2]]的形式,如arr3的结果
3.矩阵的特有属性
(1).定义初始矩阵arr:
(2) .转置矩阵arr1:
(3).共轭转置矩阵arr2:
(4).逆转置矩阵arr3:
(5).矩阵的点乘:
小结:
1.矩阵的两种输入方式(以2行3列为例):(1).np.mat("1,2,3;4,5,6")
(2).np.matrix([[1,2,3],[4,5,6])
2.小矩阵合成大矩阵:np.bmat(arr1,arr2;arr3,arr4)
(提示:分号换行,所以这里合成了一个(arr1,arr2
arr3,arr4)形式的大矩阵
3.矩阵的特有属性(定义初始矩阵为arr):(1).转置矩阵:arr.T、
(2).共轭转置矩阵:arr.H
(3) .逆矩阵:arr.I
(4) .矩阵的点乘: np.multiply(arr1,arr2)
三、线性代数的运算:Numpy包中的linalg模块
1.求解线性方程组Ax=b
(A为矩阵,b为一维或二维数组(提示:矩阵和数据有区别,两者不要混淆。))
求解x:
2.求解特征值和特征向量
定义:设A为N介方阵,若存在数a和非零n维列向量x使得Ax=ax,则a称为A的特征值,x则称为对应a的一个特征向量。
3.计算矩阵行列式
小结:1.计算线性方程组Ax=b:x=np.linalg.solve(A,b)
2.计算特征值和特征向量:np.linalg.eig()
3.计算矩阵行列式:np.linalg.det()
(完)
写在后面:本文章适合python小白阅读和学习。作者能力有限,文中细节有不全或者错误的地方,欢迎大佬指正批评!



