python numpy

Steven Wang
1 min readDec 30, 2018

--

import numpy as np
list_1 = [1,2,3,4]
array_1 = np.array(list_1) #一維陣列
list_2=[5,6,7,8]
array_2=np.array([list1,list2])#二維陣列

array_2.shape

array_2.size

array_2.dtype

array_4=np.arang(1,10,2)
array_4

np.zeros(5) #全零矩陣

np.zreos([2,3])

np.eye(5) #單位矩陣

np.eye(5).dtype

陣列創建及訪問

a=np.arange(1,10)
a[1]
a[1:5]

b=np.array([1,2,3],[4,5,6])
b[1][0]
b[1,0]

c=np.array([1,2,3],[4,5,6],[7,8,9])
c[:2][1:]

np.random.randn(10)#隨機十個1以下的數

np.random.randint(10)#隨機一個10以下的數

np.random.randint(10,size=20)#隨機二十個10以下的數一維

np.random.randint(10,size=(2,3))#隨機3*2陣列10以下的數二維

np.random.randint(10,size=20).reshape(4,5)#二維

陣列運算

a=np.random.randint(10,size=20).reshape(4,5)
b=np.random.randint(10,size=20).reshape(4,5)

a+b

a-b

a*b

a/b

矩陣運算

np.mat([[1,2,3],[4,5,6]])

a=array
a=np.mat(a)#陣列轉矩陣
b=np.mat(b)

a+b

a-b

a*b #矩陣a的行必須等於矩陣 b的列

陣列常用函數

a=np.random.randint(10,size=20).reshape(4,5)
np.unique(a) #array中不同的數值
sum(a)#加總二維陣列的column,是一串list
sum(a[0])#加總二維陣列的row[0]
sum(a[:,0])#加總二維陣列的column[0]
a.max()
max(a[0])
max(a[:,0])

序列化serialization

序列化(serialization)在計算機科學的資料處理中,是指將資料結構或物件狀態轉換成可取用格式(例如存成檔案,存於緩衝,或經由網絡中傳送),以留待後續在相同或另一台計算機環境中,能恢復原先狀態的過程。

方法一

import pickle
import numpy as np
x=np.arange(10)
f=open(‘x.pkl’,’wb’)
pickle.dump(x,f)

f=open(‘x.pkl’,’rb’)
pickle.load(f)

方法二(easy )

np.save(‘one_array’,x)
np.load(‘one_array.npy’)

y=np.arange(20)
np.savez(‘two_array.npz’,a=x,b=y)

c=np.load(‘two_array.npz’)
c[‘a’]
c[‘b’]

--

--

Steven Wang
Steven Wang

No responses yet