1. 程式人生 > >python小白之np功能快速查

python小白之np功能快速查

移動 壓縮 mean LG 起點 none 上下 AC 隨機數

np一些用法

np.a

np.array([1,2,3],dtype=int) #建立一個一維數組,

np.array([[1,2,3],[2,3,4]]) #建立一個二維數組。

np.arange(2,3,0.1) #起點,終點,步長值。含起點值,不含終點值。


np.m

np.mean求取均值。經常操作的參數為axis,以m * n矩陣舉例:

axis 不設置值,對 m*n 個數求均值,返回一個實數

axis = 0:壓縮行,對各列求均值,返回 1* n 矩陣

axis =1 :壓縮列,對各行求均值,返回 m *1 矩陣

>>> import numpy as np

>>> num1 = np.array([[1,2,3],[2,3,4],[3,4,5],[4,5,6]])
>>> now2 = np.mat(num1)
>>> now2
matrix([[1, 2, 3],
[2, 3, 4],
[3, 4, 5],
[4, 5, 6]])

>>> np.mean(now2) # 對所有元素求均值
3.5

>>> np.mean(now2,0) # 壓縮行,對各列求均值
matrix([[ 2.5, 3.5, 4.5]])

>>> np.mean(now2,1) # 壓縮列,對各行求均值
matrix([[ 2.],
[ 3.],
[ 4.],
[ 5.]])

np.i

innner(a,b)用來計算內積;outer(a,b)計算外積。

np.z

np.zeros((2,3)) #生成一個2行3列的全0矩陣。註意,參數是一個tuple:(2,3),所以有兩個括號。完整的形式為:zeros(shape,dtype=)。相同的結構,有ones()建立全1矩陣。empty()建立一個空矩陣,使用內存中的隨機值來填充這個矩陣。

identity(n) #建立n*n的單位陣,這只能是一個方陣。

eye(N,M=None,k=0) #建立一個對角線是1其余值為0的矩陣,用k指定對角線的位置。M默認None。

此外,numpy中還提供了幾個like函數,即按照某一個已知的數組的規模(幾行幾列)建立同樣規模的特殊數組。這樣的函數有zeros_like()、empty_like()、ones_like(),它們的參數均為如此形式:zeros_like(a,dtype=),其中,a是一個已知的數組。

np.l

np.linspace(1,4,10) #起點,終點,區間內點數。起點終點均包括在內。同理,有logspace()函數

np.linalg.companion(a) #伴隨矩陣

np.linalg.triu()/tril() #返回上下三角矩陣

np.linalg.logm(A)計算矩陣A的對數。

np.linalg.norm(a,ord=None) #計算矩陣a的範數

np.linalg.cond(a,p=None) #矩陣a的條件數

np.r

np.random.rand(3,2) #產生一個3行2列的隨機數組。同一空間下,有randn()/randint()等多個隨機函數

np.roll(x,2) #roll()是循環移位函數。此調用表示向右循環移動2位.

np.f

fliplr()/flipud()/rot90() #左右上下翻轉、逆時針旋轉90度矩陣

np.d

np.dot(a,b)用來計算數組的點積

np.v

vdot(a,b)專門計算矢量的點積,和dot()的區別在於對complex數據類型的處理不一樣;

#vstack((a,b)) 兩個數組簡單合在一起
#hstack((a,b)) 兩個數組按每行合在一起 相當於column_stack((a,b))

python小白之np功能快速查