numpy庫(kù)是Python進(jìn)行數(shù)據(jù)分析和矩陣運(yùn)算的一個(gè)非常重要的庫(kù),可以說(shuō)numpy讓Python有了matlab的味道
本文主要介紹幾個(gè)numpy庫(kù)下的小函數(shù)。
1、mat函數(shù)
mat函數(shù)可以將目標(biāo)數(shù)據(jù)的類型轉(zhuǎn)換為矩陣(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函數(shù)將一個(gè)列表a轉(zhuǎn)換成相應(yīng)的矩陣類型。
2、zeros
zeros函數(shù)是生成指定維數(shù)的全0數(shù)組
>>myMat=np.zeros(3) ###生成一個(gè)一維的全0數(shù)組
>>print(myMat)
>>array([0.,0.,0.])
>>myMat1=np.zeros((3,2)) ####生成一個(gè)3*2的全0數(shù)組
>>print(myMat)
>>array([[0.,0.],
[0.,0.]
[0.,0.]])
3、ones
ones函數(shù)是用于生成一個(gè)全1的數(shù)組
>>onesMat=np.ones(3) ###1*3的全1數(shù)組
>>print(onesMat)
>>array([1.,1.,1.])
>>onesMat1=np.ones((2,3)) ###2*3的全1數(shù)組
>>print(onesMat1)
>>array([[1.,1.,1.],[1.,1.,1.]])
4.eye
eye函數(shù)用戶生成指定行數(shù)的單位矩陣
>>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作用于矩陣,用作球矩陣的轉(zhuǎn)置?
>>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函數(shù)用于把一個(gè)矩陣轉(zhuǎn)化成為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()函數(shù)是numpy.matrix下的一個(gè)函數(shù),用作把矩陣轉(zhuǎn)換成數(shù)組,等價(jià)于np.asarray(self).
>>> x = np.matrix(np.arange(12).reshape((3,4))); x
matrix([[ 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用作求矩陣的逆矩陣。逆矩陣在計(jì)算中是經(jīng)常需要用到的。例如一個(gè)矩陣A,求A的逆矩陣B,即存在矩陣B是的AB=I(I為單位)
In [3]: a=mat([[1,2,3],[4,5,6]])
In [4]: a
Out[4]:
matrix([[1, 2, 3],
[4, 5, 6]])
In [5]: a.I
Out[5]:
matrix([[-0.94444444, 0.44444444],
[-0.11111111, 0.11111111],
[ 0.72222222, -0.22222222]])
In [6]: s=a.I
In [8]: a*s
Out[8]:
matrix([[ 1.00000000e+00, 3.33066907e-16],
[ 0.00000000e+00, 1.00000000e+00]])
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元

