numpy庫是Python進行數據分析和矩陣運算的一個非常重要的庫,可以說numpy讓Python有了matlab的味道
本文主要介紹幾個numpy庫下的小函數。
1、mat函數
mat函數可以將目標數據的類型轉換為矩陣(matrix)
import numpy as np>>a=[[1,2,3,], [3,2,1]]>>type(a)>>list >>myMat=np.mat(a)>>myMat>>matrix([[1,2,3],[3,2,1]]) >>type(myMat)>>numpy.matrixlib.defmatrix.martix
因此可以使用mat函數將一個列表a轉換成相應的矩陣類型。
2、zeros
zeros函數是生成指定維數的全0數組
>>myMat=np.zeros(3) ###生成一個一維的全0數組>>print(myMat)>>array([0.,0.,0.])>>myMat1=np.zeros((3,2)) ####生成一個3*2的全0數組>>print(myMat)>>array([[0.,0.], [0.,0.] [0.,0.]])
3、ones
ones函數是用于生成一個全1的數組
>>onesMat=np.ones(3) ###1*3的全1數組>>print(onesMat)>>array([1.,1.,1.])>>onesMat1=np.ones((2,3)) ###2*3的全1數組>>print(onesMat1)>>array([[1.,1.,1.],[1.,1.,1.]])
4.eye
eye函數用戶生成指定行數的單位矩陣
>>eyeMat=np.eye(4) >>print(eyeMat)>>array([[1.,0.,0.,0.], [0.,1.,0.,0.], [0.,0.,1.,0.,], [0.,0.,0.,1.]])
5、.T
.T作用于矩陣,用作球矩陣的轉置
>>myMat=np.mat([[1,2,3],[4,5,6]])>>print(myMat)>>matrix([[1.,2.,3.] [4.,5.,6.]])>>print(myMat.T)>>matrix([[1,4], [2,5], [3,6]])
6、tolist
tolist函數用于把一個矩陣轉化成為list列表
>>x=np.mat([[1,2,3],[4,5,6]])>>print(x)>>matrix([[1,2,3],[4,,5,6]])>>type(x)>>matrix >>x.tolist()>>[[1,2,3],[4,5,6]]
7.getA()
getA()函數是numpy.matrix下的一個函數,用作把矩陣轉換成數組,等價于np.asarray(self).
>>> x = np.matrix(np.arange(12).reshape((3,4))); xmatrix([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])>>> x.getA()array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])
8. .I
.I用作求矩陣的逆矩陣。逆矩陣在計算中是經常需要用到的。例如一個矩陣A,求A的逆矩陣B,即存在矩陣B是的AB=I(I為單位)
In [3]: a=mat([[1,2,3],[4,5,6]]) In [4]: aOut[4]:matrix([[1, 2, 3], [4, 5, 6]]) In [5]: a.IOut[5]:matrix([[-0.94444444, 0.44444444], [-0.11111111, 0.11111111], [ 0.72222222, -0.22222222]])In [6]: s=a.I In [8]: a*sOut[8]:matrix([[ 1.00000000e+00, 3.33066907e-16], [ 0.00000000e+00, 1.00000000e+00]])
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網之家。
新聞熱點
疑難解答