看MATLAB的書籍看到使用矩陣運(yùn)算可以在一定程度上提高軟件的執(zhí)行效率,我又想到了Python,想到了numpy。且不管兩個(gè)是否一樣能夠加速軟件的執(zhí)行速度,學(xué)習(xí)一點(diǎn)基礎(chǔ)的numpy似乎是很有必要了。
引用numpy庫
>>> import numpy as np
創(chuàng)建一維矩陣,從下面的代碼以及運(yùn)行結(jié)果中可以看出,創(chuàng)建矩陣的時(shí)候使用列表和元組作用相同。
>>> a = np.array([1,2,3,4])
>>> a
array([1, 2, 3, 4])
>>> b = np.array((1,2,3,4))
>>> b
array([1, 2, 3, 4])
查看矩陣的數(shù)據(jù)類型
>>> a.dtype
dtype(‘int64')
創(chuàng)建多維矩陣,從下面的代碼以及運(yùn)行結(jié)果可以看出,array函數(shù)的參數(shù)最多只能有2個(gè)同類型參數(shù)。創(chuàng)建多維矩陣,元素可以放進(jìn)一個(gè)列表中,不同的矩陣行存儲(chǔ)到列表的元素中。
>>> c = np.array([1,2,3,4],[4,5,6,7],[7,8,9,10])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: only 2 non-keyWord arguments accepted
>>> c = np.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]])
>>> c
array([[ 1, 2, 3, 4],
[ 4, 5, 6, 7],
[ 7, 8, 9, 10]])
查看矩陣的維度
>>> a.shape
(4,)
>>> c.shape
(3, 4)
修改矩陣維度
>>> d = c.reshape((6,2))
>>> d
array([[ 1, 2],
[ 3, 4],
[ 4, 5],
[ 6, 7],
[ 7, 8],
[ 9, 10]])
>>> d = c.reshape(4,3)
>>> d
array([[ 1, 2, 3],
[ 4, 4, 5],
[ 6, 7, 7],
[ 8, 9, 10]])
根據(jù)已有的矩陣創(chuàng)建新矩陣,同時(shí)制定元素的數(shù)據(jù)類型,分別使用缺省參數(shù)和指明參數(shù)兩種方式
>>> b = np.array(a,float)
>>> b
array([ 1., 2., 3., 4.])
>>> b = np.array(a,dtype = np.complex)
>>> b
array([ 1.+0.j, 2.+0.j, 3.+0.j, 4.+0.j])
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注