用Python處理數(shù)據(jù)時,經(jīng)常需要過濾掉缺失值(NA)。Python提供了許多方法來處理缺失值,例如用其他值代替、刪除缺失值等。下面介紹如何使用Python過濾掉缺失值。
# 導入相關庫 import pandas as pd import numpy as np # 創(chuàng)建一個數(shù)據(jù)框 df = pd.DataFrame({'A': [1, 2, np.nan, 4], 'B': [5, np.nan, 7, 8], 'C': ['a', 'b', np.nan, 'd']}) # 方法一:刪除缺失值 df_dropna = df.dropna() # 默認刪除包含NA的行 print(df_dropna) # 方法二:用其他值填充缺失值 df_fillna = df.fillna(0) # 用0填充缺失值 print(df_fillna) # 方法三:判斷是否為NA df_isna = df[df.isna()] # 返回所有包含NA的行 print(df_isna) # 方法四:篩選出不包含NA的行 df_notna = df[df.notna().all(axis=1)] # 返回所有不包含NA的行 print(df_notna)
以上代碼分別演示了四種處理缺失值的方法,分別為刪除缺失值、用其他值填充缺失值、判斷是否為NA和篩選出不包含NA的行。
在實際使用時,應根據(jù)數(shù)據(jù)情況選擇合適的處理方法。例如,如果缺失值較多,刪除缺失值可能會使樣本數(shù)量減少過多,導致模型泛化能力下降,此時可以考慮用其他值填充缺失值。