中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pandas 缺失值與空值處理的實現方法

發布時間:2020-10-23 21:04:03 來源:腳本之家 閱讀:226 作者:lwgkzl 欄目:開發技術

1.相關函數

  • df.dropna()
  • df.fillna()
  • df.isnull()
  • df.isna()

2.相關概念

空值:在pandas中的空值是""

缺失值:在dataframe中為nan或者naT(缺失時間),在series中為none或者nan即可

3.函數具體解釋

DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

函數作用:刪除含有空值的行或列

axis:維度,axis=0表示index行,axis=1表示columns列,默認為0

how:"all"表示這一行或列中的元素全部缺失(為nan)才刪除這一行或列,"any"表示這一行或列中只要有元素缺失,就刪除這一行或列

thresh:一行或一列中至少出現了thresh個才刪除。

subset:在某些列的子集中選擇出現了缺失值的列刪除,不在子集中的含有缺失值得列或行不會刪除(有axis決定是行還是列)

inplace:刷選過缺失值得新數據是存為副本還是直接在原數據上進行修改。

例子:

df = pd.DataFrame({"name": ['Alfred', 'Batman', 'Catwoman'],
        "toy": [np.nan, 'Batmobile', 'Bullwhip'],
         "born": [pd.NaT, pd.Timestamp("1940-04-25"),pd.NaT]})
 
print df

pandas 缺失值與空值處理的實現方法

默認參數:刪除行,只要有空值就會刪除,不替換。

print df.dropna()
print df

pandas 缺失值與空值處理的實現方法

print "delete colums"
print df.dropna(axis=1) #delete col

pandas 缺失值與空值處理的實現方法

print "所有值全為缺失值才刪除"
print df.dropna(how='all')

pandas 缺失值與空值處理的實現方法

print "至少出現過兩個缺失值才刪除"
print df.dropna(thresh=2)

pandas 缺失值與空值處理的實現方法

print "刪除這個subset中的含有缺失值的行或列"
print df.dropna(subset=['name', 'born'])

pandas 缺失值與空值處理的實現方法

DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)

函數作用:填充缺失值

value:需要用什么值去填充缺失值

axis:確定填充維度,從行開始或是從列開始

method:ffill:用缺失值前面的一個值代替缺失值,如果axis =1,那么就是橫向的前面的值替換后面的缺失值,如果axis=0,那么則是上面的值替換下面的缺失值。backfill/bfill,缺失值后面的一個值代替前面的缺失值。注意這個參數不能與value同時出現

limit:確定填充的個數,如果limit=2,則只填充兩個缺失值。

示例:

df = pd.DataFrame([[np.nan, 2, np.nan, 0],
         [3, 4, np.nan, 1],
         [np.nan, np.nan, np.nan, 5],
        [np.nan, 3, np.nan, 4]],
         columns=list('ABCD'))
 
print df
 
print "橫向用缺失值前面的值替換缺失值"
print df.fillna(axis=1,method='ffill')
 
print "縱向用缺失值上面的值替換缺失值"
print df.fillna(axis=0,method='ffill')

pandas 缺失值與空值處理的實現方法

print df.fillna(0)

pandas 缺失值與空值處理的實現方法

不同的列用不同的值填充:

pandas 缺失值與空值處理的實現方法

對每列出現的替換值有次數限制,此處限制為一次

pandas 缺失值與空值處理的實現方法

DataFrame.isna()

判斷是不是缺失值:

pandas 缺失值與空值處理的實現方法

isnull同上。

替換空值:

df = pd.DataFrame([[np.nan, 2, np.nan, 0],
         [3, 4, "", 1],
         [np.nan, np.nan, np.nan, 5],
        [np.nan, 3, "", 4]],
         columns=list('ABCD'))
 
print df

pandas 缺失值與空值處理的實現方法

如上,缺失值是NAN,空值是沒有顯示。

替換空值代碼:需要把含有空值的那一列提出來單獨處理,然后在放進去就好。

clean_z = df['C'].fillna(0)
clean_z[clean_z==''] = 'hello'
df['C'] = clean_z
print df

pandas 缺失值與空值處理的實現方法

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

竹溪县| 富锦市| 汾阳市| 来宾市| 清水县| 隆林| 蒲江县| 台南县| 甘泉县| 崇礼县| 岗巴县| 灵宝市| 若羌县| 鹿邑县| 大城县| 九龙县| 鹰潭市| 叙永县| 伊金霍洛旗| 湟源县| 寿宁县| 桃江县| 独山县| 共和县| 安西县| 扎兰屯市| 蒲城县| 错那县| 新兴县| 迭部县| 榆林市| 汉阴县| 八宿县| 龙胜| 江油市| 洞口县| 琼结县| 雅安市| 永兴县| 屏南县| 徐闻县|