一篇博客入門Numpy模塊

一篇博客入門Numpy模塊

(Numerical python)高性能科學計算和數據分析的基礎包。

功能:
  • ndarray,一個具有矢量算術運算和複雜廣播能力的快速且節省空間的多維數組。
  • 用於對數組數據進行快速運算的標準數學函數(無須循環)
  • 線性代數,隨機數生成以及傅里葉變換功能
  • 用於讀寫磁盤數據的工具以及用於操作內存映射文件的工具
本質上,Numpy期望用戶以使用“標量”的方式操作“向量”

即:操作一個矩陣向操作一個向量一樣輕鬆。

import numpy as np
a = np.array([1,2,3,4])
b = np.array([10,20,30,40])
c = a+b
print(c)

ndarray數組

創建

  • import numpy as np
    a = [1,2,3,4]
    b = np.array(a)
    
  • array_one = np.ones([10,10])
    

    創建10行10列的數據爲浮點1的矩陣,同理還有zeros()

  • np.arange(1,10,2)
    

    array([0,2,4,6,8]),從元素0開始依次遞增2!!!10是娶不到的

隨機數

  • 設置隨機種子
    • np.random.seed(10)
  • 均勻分佈
    • np.random.rand(10,10) 創建指定形狀的數組(範圍在0,1之間)
    • np.random.uniform(0,100) 創建指定範圍內的一個
    • np.random.randint(0,100) 創建指定範圍內的一個整數
  • 正態分佈
    • np.random.normal(1.75,0.1,(2,3)) 給定均值/標準差/維度 的正態分佈
    • np.random.randn(10,10) 指定形狀的標準正態分佈

隨機數的相關操作

打亂shuffle
array([[1,2],[3,4]
	,[5,6],[7,8]])
np.random.shuffle(a)

二維數組,只有行的順序被打亂了,列的順序不變

查看數組屬性

用法 說明
b.size 數組元素的個數(shape裏面每一個分量的乘積)
b.shape 數組形狀
b.ndim 數組維度
b.dtype 數組元素類型

切片和索引

20200614165132841

attention:

arr[5:8] = 12

在list中會報錯,3個元素應該被賦三個值,但是在ndarray中可以將所有元素賦一個值

三維數組的切片索引

20200614165359617
在這裏插入圖片描述

變形之前的元素個數和變形之後的元素個數應該保持一直。6*4 == 24

切片分成多個數組

在這裏插入圖片描述

數組&標量之間的運算

數組&數組---------------加減乘除------------對每個位置分別操作

20200614170437170

數學和統計方法

在這裏插入圖片描述

這是對全局進行操作,however有些人希望針對行或者針對列進行某些操作。

指定計算範圍的統計方法—axis

在這裏插入圖片描述

基本的數學和統計學的方法

在這裏插入圖片描述

線性代數

矩陣相乘
x.dot(y)  #相當於np.dot(x,y)

20200617154553239

其他函數

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章