數組的操作
基本索引array[ ]
一. [一維(由0開始數)][二維(由0開始數)]
二. [負號表示由後往回數第幾個(由1開始數)]
三. 由索引修改數組的值
**四.**返回數組中的非零索引的展開。
numpy.flatnonzero
numpy.nonzero
切片array[::]
-
切片array[::]
使用切片時並非重新複製資料,而是傳回子陣列的視圖,想重新複製出資料須使用array[::].copy()。
注意:row、column都以0為起始列。
注意:[:]以及[::]的不同,[::-1]第3個值-1表示翻轉。
-
切片array[[ ]]
-
mask與條件切片
條件切片會傳回一個bool數組,也可以搭配numpy.flatnonzero及numpy.where索引指定條件的切片。
什麼是掩碼數組?
mask
在許多情況下,數據集可能不完整或因無效數據的存在而受到污染。例如,傳感器可能無法記錄數據或記錄無效值。該numpy.ma
模塊通過引入掩碼數組提供了一種解決此問題的便捷方法。
-
查找NAN值
np.nan需要使用numpy.isnan查詢。
重塑
- np.reshape()
- np.ndarray.flatten(order=‘C’)
order:‘C’ 按行,‘F’ 按列,‘A’ 原順序展開成一維。
- np.transpose(arr, axes)
與reshape不同,依照原本維度改變形狀。
arr:要轉置的數組
axes:整數的列表,對應維度,默認所有維度都會翻轉。
- numpy.matrix