創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊、網(wǎng)絡(luò)空間、營銷軟件、網(wǎng)站建設(shè)、襄州網(wǎng)站維護(hù)、網(wǎng)站推廣。這篇文章將為大家詳細(xì)講解有關(guān)python中進(jìn)行矩陣運(yùn)算的方法,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
python的numpy庫提供矩陣運(yùn)算的功能,因此我們在需要矩陣運(yùn)算的時(shí)候,需要導(dǎo)入numpy的包。
numpy的導(dǎo)入和使用
from numpy import *;#導(dǎo)入numpy的庫函數(shù) import numpy as np; #這個(gè)方式使用numpy的函數(shù)時(shí),需要以np.開頭。
矩陣的創(chuàng)建
由一維或二維數(shù)據(jù)創(chuàng)建矩陣
>>> from numpy import * >>> a1=array([1,2,3]) >>> a1 array([1, 2, 3]) >>> a1=mat(a1) >>> a1 matrix([[1, 2, 3]]) >>> shape(a1) (1, 3) >>> b=matrix([1,2,3]) >>> shape(b) (1, 3)
常見的矩陣運(yùn)算
1. 矩陣相乘
>>>a1=mat([1,2]); >>>a2=mat([[1],[2]]); >>>a3=a1*a2 #1*2的矩陣乘以2*1的矩陣,得到1*1的矩陣 >>> a3 matrix([[5]])
2. 矩陣點(diǎn)乘
矩陣對應(yīng)元素相乘
>>>a1=mat([1,1]); >>>a2=mat([2,2]); >>>a3=multiply(a1,a2) >>> a3 matrix([[2, 2]])
矩陣點(diǎn)乘
>>>a1=mat([2,2]); >>>a2=a1*2 >>>a2 matrix([[4, 4]])
3、矩陣求逆,轉(zhuǎn)置
矩陣求逆
>>>a1=mat(eye(2,2)*0.5) >>> a1 matrix([[ 0.5, 0. ], [ 0. , 0.5]]) >>>a2=a1.I #求矩陣matrix([[0.5,0],[0,0.5]])的逆矩陣 >>> a2 matrix([[ 2., 0.], [ 0., 2.]])
矩陣轉(zhuǎn)置
>>> a1=mat([[1,1],[0,0]]) >>> a1 matrix([[1, 1], [0, 0]]) >>> a2=a1.T >>> a2 matrix([[1, 0], [1, 0]])
4.計(jì)算矩陣對應(yīng)行列的大、最小值、和。
>>>a1=mat([[1,1],[2,3],[4,2]]) >>> a1 matrix([[1, 1], [2, 3], [4, 2]])
計(jì)算每一列、行的和
>>>a2=a1.sum(axis=0) #列和,這里得到的是1*2的矩陣 >>> a2 matrix([[7, 6]]) >>>a3=a1.sum(axis=1) #行和,這里得到的是3*1的矩陣 >>> a3 matrix([[2], [5], [6]]) >>>a4=sum(a1[1,:]) #計(jì)算第一行所有列的和,這里得到的是一個(gè)數(shù)值 >>> a4 5 #第0行:1+1;第2行:2+3;第3行:4+2
關(guān)于python中進(jìn)行矩陣運(yùn)算的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。