一、nan和inf的簡介
nan 不是一個數字 讀取本地文件為flaot的時候,有缺失 inf(infinity): 無窮盡 inf: 正無窮 -inf: 負無窮 數據類型:float # 注意: 要想直接賦值nan和inf需要修改數組的數據類型為float
二、nan中的注意點
1、兩個nan是不相等的 2、np.nan != np.nan 布爾索引,結果為True 3、判斷數組中nan的個數 arr1 != arr1 # nan相等的為True np.count_nonzero(arr1 != arr1) # True為非0 4、修改nan值的兩種方法 # 方法一 np.isnan(arr1) # 是布爾索引判斷arr1中為nan的 arr1[np.isnan(arr1)] = 0 # 修改數據值 # 方法二 arr1 != arr1 # 布爾索引 arr1[arr1 != arr1] = 3 # 修改nan的值 5、nan和任意值計算都是nan
三、nump中常用統計函數
求和:np.sum(arr1, axis=None) 均值:np.mean(arr1, axis=0) # 平均值 中值:np.median(arr1, axis=0) # 中值 最大值:np.max(arr1, axis=0) 最小值:np.min(arr1, axis=0) 極值:np.ptp(arr1, axis=0) # 最大值減最小值 標准差:np.std(arr1, axis=0) # 反映出數據的波動情況 # 標准差數值較少,代表這些數值比較接近平均值,越穩定,否則,越不穩定
注意:一般替換數值的nan使用均值(mean)或中值(media)