1. 程式人生 > >numpy基礎練習1

numpy基礎練習1


import numpy as np

a=np.random.randn(2,3)
#數學運算
print(a)
print('a*10:\n',a*10)
print('a+a:\n',a+a)
#每個陣列都有一個shape(一個表示各維度大小的元組)和一個dtype(一個用於說明陣列資料型別的物件)
print('a shape:\n',a.shape)
print('a dtype:\n',a.dtype)
#建立陣列 array函式
a1=[6,7.5,8,0,1]
arr1=np.array(a1)
print('建立陣列arr1:\n',arr1)
#巢狀序列(比如由一組等長列表組成的列表)將會被轉換為一個多維陣列:
a2=[[1,2,3,4],[5,6,7,8]]
arr2=np.array(a2)
print('巢狀序列arr2:\n',arr2)
#因為data2是列表的列表,NumPy陣列arr2的兩個維度的shape是從data2引入的。可以用屬性ndim和shape驗證:
print('維度:\n',arr2.ndim)
print('shape:\n',arr2.shape)
#np.array會嘗試為新建的這個陣列推斷出一個較為合適的資料型別。資料型別儲存在一個特殊的dtype物件中。比如說,在上面的兩個例子中,我們有:
print('資料型別\n',arr1.dtype)
print(arr2.dtype)
#除np.array之外,還有一些函式也可以新建陣列。比如,zeros和ones分別可以建立指定長度或形狀的全0或全1陣列。empty可以建立一個沒有任何具體值的陣列。要用這些方法建立多維陣列,只需傳入一個表示形狀的元組即可:
print(np.zeros(10))
print(np.zeros((2,3)))
print(np.empty((2,3)))
#arange是Python內建函式range的陣列版:
print(np.arange(15) )
#dtype(資料型別)是一個特殊的物件,它含有ndarray將一塊記憶體解釋為特定資料型別所需的資訊:
arr3=np.array([1,2,3],dtpye=np.folat64)
arr4=np.array([1,2,3],dtype=np.int32)
print(arr3.dtype)
print(arr4.dtype)