Pandas缺失值刪除df.dropna()的使用
函數參數
函數形式:dropna(axis=0, how=‘any’, thresh=None, subset=None, inplace=False)
參數:
- axis:0或’index’,表示按行刪除;1或’columns’,表示按列刪除。
- how:‘any’,表示該行/列隻要有一個以上的空值,就刪除該行/列;‘all’,表示該行/列全部都為空值,就刪除該行/列。
- thresh:int型,默認為None。如果該行/列中,非空元素數量小於這個值,就刪除該行/列。
- subset:子集。列表,按columns所在的列(或index所在的行)刪除。
- inplace:是否原地替換調原來的dataframe。佈爾值,默認為False。
整行整列刪除
使用df.dropna()方法刪除缺失值
import pandas as pd import numpy as np # 原數據 df = pd.DataFrame({'A':['a1','a1','a2','a2'], 'B':['b1','b2',None,'b2'], 'C':[1,2,3,4], 'D':[5,6,None,8], 'E':[5,None,7,8] }) # 刪除有缺失值的行 res1 = df.dropna() # 刪除有缺失值的列 res2 = df.dropna(1)
結果展示
df
res1
res2
以下是一些常見操作:
# 刪除所有缺失值的行 df.dropna() # 刪除所有缺失值的列 df.dropna(axis = 'columns') df.dropna(axis = 1) # how參數 {‘any', ‘all'}, default ‘any',any:刪除帶有nan的行;all:刪除全為nan的行 # 刪除所有值都缺失的行 df.dropna(how = 'all') # 刪除至少有兩個缺失值的行 df.dropna(thresh = 2) # 指定判斷缺失值的列范圍 df.dropna(subset = ['B','D']) # 使刪除的結果生效 df.dropna(inplace = True) # 指定列的缺失值刪除 df.col.dropna()
需要註意的是,df.dropna()操作不能替換原來的數據。若需要替換,可以重新賦值或者傳入參數inplace = True
到此這篇關於Pandas缺失值刪除df.dropna()的使用的文章就介紹到這瞭,更多相關Pandas缺失值刪除df.dropna()內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Pandas||過濾缺失數據||pd.dropna()函數的用法說明
- Python pandas處理缺失值方法詳解(dropna、drop、fillna)
- pandas中NaN缺失值的處理方法
- Python數據分析之缺失值檢測與處理詳解
- pandas數據清洗(缺失值和重復值的處理)