(1)把向量轉化為矩陣
import numpy as np
a = np.arange(15) #構造出乙個從0到14的向量
檢視為:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])
改變向量為三行五列的矩陣
a.reshape(3,5)
結果為:
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
a.shape的結果為(3,5)
a.ndim檢視a的維度結果為2
a.size檢視a中有多少個元素
(2)初始化乙個陣列
初始化乙個三行四列的0陣列:
np.zeros((3,4))
array([[0., 0., 0., 0.],
[0., 0., 0., 0.],
[0., 0., 0., 0.]])
初始化乙個int型的值全為1的三位陣列:
np.ones((3,4,5), dtype=np.int32)
array([[[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1]],
[[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1]],
[[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1],
[1, 1, 1, 1, 1]]])
構造特殊陣列:
np.arange(5,30,5) #起始值為5結束值為30(不包含30),步長為5
構造出陣列然後把陣列改變為3行2列特殊格式:
np.arange(5,31,5).reshape(3,2)
array([[ 5, 10],
[15, 20],
[25, 30]])
(3)numpy的random模組
np.random.random((2,3))
構造出乙個兩行三列的陣列
array([[0.97613097, 0.9684031 , 0.84997366],
[0.14031906, 0.20194863, 0.168685 ]])
(4)linspace的作用
from numpy import pi
np.linspace(0, 2*pi, 100) #以0到2pi為區間,均等的取100個值
求0到2pi的sin值
np.sin(np.linspace(0, 2*pi, 100))
(5)陣列的運算操作
加減示例:
a = np.array([20, 30, 40, 50])
b = np.arange(4)
c = a - b #結果為[20, 29,38,47], 對應元素相減
c = c - 1 #結果為[19,28,37,46], 每個元素都減一
b**2 #結果為[0,1,4,9], 每個元素都平方
print(a < 35) #結果為[true,true,false,false],每個元素都比較並以布林值返回
乘法示例:
a = np.array([[1,1], [0,1]])
b = np.array([[2,0], [3,4]])
print(a*b)
結果為:
[[2 0]
[0 4]] #對應位置相乘
print(a.dot(b))
print(np.dot(a,b))
結果為:
[[5 4]
[3 4]] #矩陣相乘
numpy常用函式
np.unique 去除重複值 np.c 按行按列合併陣列 np.searchsorted a,b 返回b有序插入在a中的位置索引 np.vectorize 向量化運算函式 np.percentile 取數列第百分分位的數值 np.array.any 和numpy.array.all np.arra...
numpy常用函式
arange是numpy模組中的函式,arange start,stop step,dtype none 根據start與stop指定的範圍以及step設定的步長,生成乙個 ndarray,如果未給出dtype,則資料型別根據輸入引數確定。arange生成乙個等差陣列,step可以為float型別。...
numpy常用函式
ndim 維度 shape 各維度的尺度 2,5 size 元素的個數 10 dtype 元素的型別 dtype int32 np.arange n 元素從0到n 1的ndarray型別 np.ones shape 生成全1 np.zeros shape ddtype np.int32 生成int3...