Numpy學習筆記

2021-09-01 09:26:31 字數 1343 閱讀 1707

np.shape #檢視陣列維度

np.dtype #檢視資料型別

np.ndim #檢視陣列維度,列數

np.random.rand(2,3) #生成2行3列的高斯隨機數組

np.arange(5) / np.arange(0,5) #array([0, 1, 2, 3, 4])

np.array([2,3,4],dtype=np.int32) / np.asarray([2,3,4]) #將輸入資料轉為numpy 可顯式指定資料型別

np.asytpe(np.float64) #型別轉換

np.astype(a.dtype) #型別轉換2

np.zeros((3,2)) / np.zeros_like([[1,2],[1,2],[1,2]]) #生成全零的3行2列陣列

np.ones((3,2)) / np.ones_like([[1,2],[1,2],[1,2]]) #生成全1陣列3行2列

np.empty((3,2)) / np.empty_like([[1,2],[1,2],[1,2]]) #生成全0陣列3行2列 或者隨機值

np.eye(3) / np.indetity(3) #生成3階單位陣

arr2d=np.arange(1,10).reshape((3,3)) #生成陣列 2維陣列

arr2d[1,0] / arr2d[1][0] #2d 訪問元素

arr3d=np.arange(1,13).reshape((2,2,3)) #生成陣列 3維陣列

arr3d[0,0,1] / arr3d[0][0][1] #3d 訪問元素

#注意多維陣列 切片 預設不複製,任何修改會反應到原陣列

#numpy 預設不複製,處理大資料

arr1=np.arange(10)

arr_slice=arr1[5:8]

#arr_slice=arr1[5:8].copy()

arr_slice[1]=12345

print(arr1)

arr_slice[:]=64

print(arr1)

#list 預設複製

arr2=list(range(10))

arr_slice2=arr2[5:8]

arr_slice2[1]=12345

print(arr2)

#布林型別索引 布林索引會建立陣列副本

names=np.array(['bob','joe','will','bob','will','joe','joe'])

data=np.random.randn(7,4)

data[names=='bob']

Numpy學習筆記

測試檔案裡的資料排列型別最好是有規律的,不可以隨便,否則將發生一些錯誤 genfromtxt函式 genfromtxt函式建立陣列 資料 genfromtxt主要執行兩個迴圈運算。第乙個迴圈將檔案的每一行轉換成字串序列。第二個迴圈將每個字串序列轉換為相應的資料型別。genfromtxt能夠考慮缺失的...

numpy學習筆記

1 array.ndim 用來輸出陣列的維度 2 array.shape 用來輸出陣列的形狀 3 arry.size 用來輸出陣列的大小見jupyter notebook的numpy function list 生成函式基本運算 直接用陣列的相加減乘除。也就是相對應的元素間的作用。關係運算 陣列元素...

NumPy學習筆記

example np.version np.array 1,2,3 4,5,6 np.zeros 3 3 np.ones 2 3,4 np.eye 3 np.range 5 0,1,2,3,4 np.random.rand 2,3 np.random.randint 5,size 2 3 value...