1. 程式人生 > >Numpy/pandas/matplot 主要函式

Numpy/pandas/matplot 主要函式

  • Numpy是一個用於進行陣列運算的庫
  • Numpy中最重要的物件是稱為ndarray的N維陣列型別
  • 一般使用如下語句匯入:import numpy as np
  • 建立陣列:numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
  • 可以用np.dtype()定義結構體
  • 陣列維度:ndarray.shape
  • 陣列維數:ndarray.ndim
  • 調整陣列維度:ndarray.reshape(shape)
  • 建立未初始化陣列:numpy.empty(shape, dtype = float, order = 'C')
  • 建立零陣列:numpy.zeros(shape, dtype = float, order = 'C')
  • 建立一陣列:numpy.ones(shape, dtype = float, order = 'C')
  • 用現有資料建立陣列:numpy.asarray(a, dtype = None, order = None)
  • 按數值範圍建立陣列:numpy.arange(start = 0, stop, step = 1, dtype),類似的有linspace()和logspace()
  • 切片:b=a[start:stop:step],可以用...代表剩餘維度
  • 整數索引:每個整數陣列表示該維度的下標值,b=a[[r1, r2], [c1, c2]]
  • 布林索引:返回是布林運算的結果的物件,可以用&或|連線()分隔的條件
  • 在 NumPy 中可以對形狀不相似的陣列進行操作,因為它擁有廣播功能,我的理解是,廣播是一種維度的單方向拉伸
  • 陣列迭代:numpy.nditer(ndarray)或ndarray.flat
  • 陣列長度:len(arr)
  • 訪問第i個元素:一維陣列用a[i],多維陣列用a.flat[i]
  • 陣列轉置:ndarray.T
  • 陣列分割:numpy.split(ary, indices_or_sections, axis),第二項的值為整數則表明要建立的等大小的子陣列的數量,是一維陣列則表明要建立新子陣列的點。
  • 追加值:numpy.append(arr, values, axis)
  • 插入值:numpy.insert(arr, idx, values, axis)
  • 刪除值:numpy.delete(arr, values, axis)
  • 去重陣列:numpy.unique(arr, return_index, return_inverse, return_counts)
  • 字串函式:numpy.char類
  • 三角函式:numpy.sin(arr),numpy.cos(arr),numpy.tan(arr)
  • 四捨五入:numpy.around(arr,decimals)
  • 向下取整:numpy.floor(arr)
  • 向上取整:numpy.ceil(arr)
  • 取倒數:numpy.reciprocal(arr),注意對於大於1的整數返回值為0
  • 冪運算:numpy.power(arr,pow),pow可以是一個數,也可以是和arr對應的陣列
  • 取餘:numpy.mod(a,b),b可以是一個數,也可以是和a對應是陣列
  • 最小值:numpy.amin(arr,axis)
  • 最大值:numpy.amax(arr,axis)
  • 數值跨度:numpy.ptp(arr,axis)
  • 算術平均值:numpy.mean(arr,axis)
  • 標準差:numpy.std(arr)
  • 方差:numpy.var(arr)
  • 副本的改變會影響原陣列(賦值),檢視的改變不會影響原陣列(ndarray.view(),切片,ndarray.copy())
  • 線性代數:numpy.linalg模組