Numpy簡介


Numpy

  NumPy系統是Python的一種開源的數組計算擴展。這種工具可用來存儲和處理大型矩陣,比Python自身的嵌套列表(nested list structure)結構要高效的多(該結構也可以用來表示矩陣(matrix))。

 Numpy常用操作

創建數組

創建1維數組:

data = np.array([1,3,4,8])  

 查看數組維度

data.shape

 查看數組類型

data.dtype

 通過索引獲取或修改數組元素

data[1]  獲取元素
data[1] = 'a' 修改元素  

 創建二維數組

1.data = np.array([[1,2,3],[4,5,6]])   兩個元素均為列表
2.data = np.arange(10) 與python的range一樣,range返回列表,arange返回array類型的一個數組
3.data2 = data.reshape(2,5) 返回一個2*5的數組,他不是拷貝數組是引用,只是返回數組的不同視圖,data改變data2也會改變

 創建特殊數組 

data = np.zeros((2,2))  創建2*2全為0的2維數組
data = np.ones((2,3,3,))  創建全為1的三維數組
data = np.eye(4)   創建4*4的對角數組,對角元素為1,其它都為0

 數組轉換

data = np.arange(16).reshape(4,4)   將0-16的移位數組轉換為4*4的數組  

數組索引

data = np.arrange(100,step=10)  先創建一個步長為10的數組

 一維數組范圍訪問

data[2:5]   訪問第2-4之間的元素
data[:3]   訪問0-2之間的元素
data[5:] = -1  將5-最后一個元素統一賦值為-1

 二維或高維數組

data = np.arrary(16).reshape(4,4)

 訪問元素

data[1] 返回array第一行元素
data[1:3]   返回第一行到第三行元素
data[:,2:4]   返回所有行的第二到第四列元素
data[1:3,2:4]     返回第1到第二行且列數為2-4之間的元素
data[[1,3],[2,3]]   返回第一行第二列元素與第三行第三列元素(=data[1,2],data[3,3])

 布爾索引

data>10   數組中每個元素與10比較返回布爾值組成的數組
idx = data>10  獲得布爾數組
data[idx]   獲取大於10的數組
data[data>10]  獲取data數組里面大於10的元素構成的新數組  
data[data%2==0]   獲取data里面所有偶數元素構成的新數組

 數學運算

 

x = np.arange(1,5).reshape(2,2)
y = np.arange(5,9).reshape(2,2)
z = x+y 或np.add(x,y)   數組中對應位置元素相加,減法同理
c = x*y   數組中對應位置元素相乘
h = x.dot(y)   矩陣內積
q = x/y   數組對應位置相除
n = np.sqrt(x)   平方根
x.T   轉置矩陣
np.linspace(1,10,num=200)  指定在數軸上起始位置與均分,num表示均分份數
   

  

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM