當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python pandas.DataFrame.dropna用法及代碼示例


用法:

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

刪除缺失值。

有關哪些值被視為缺失以及如何處理缺失數據的更多信息,請參閱用戶指南。

參數

axis{0 或 ‘index’,1 或 ‘columns’},默認 0

確定是否刪除了包含缺失值的行或列。

  • 0,或‘index’:刪除包含缺失值的行。

  • 1,或‘columns’:刪除包含缺失值的列。

how{‘any’, ‘all’},默認 ‘any’

當我們至少有一個 NA 或全部 NA 時,確定是否從 DataFrame 中刪除行或列。

  • ‘any’:如果存在任何 NA 值,則刪除該行或列。

  • ‘all’:如果所有值都是 NA,則刪除該行或列。

thresh整數,可選

需要許多非 NA 值。

subset列標簽或標簽序列,可選

沿其他軸考慮的標簽,例如如果您要刪除行,這些將是要包含的列列表。

inplace布爾值,默認為 False

如果為 True,則在原地執行操作並返回 None。

返回

DataFrame 或無

帶有 NA 條目的 DataFrame 從其中刪除或 None 如果 inplace=True

例子

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

刪除至少缺少一個元素的行。

>>> df.dropna()
     name        toy       born
1  Batman  Batmobile 1940-04-25

刪除至少缺少一個元素的列。

>>> df.dropna(axis='columns')
       name
0    Alfred
1    Batman
2  Catwoman

刪除缺少所有元素的行。

>>> df.dropna(how='all')
       name        toy       born
0    Alfred        NaN        NaT
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

隻保留至少有 2 個非 NA 值的行。

>>> df.dropna(thresh=2)
       name        toy       born
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

定義在哪些列中查找缺失值。

>>> df.dropna(subset=['name', 'toy'])
       name        toy       born
1    Batman  Batmobile 1940-04-25
2  Catwoman   Bullwhip        NaT

將具有有效條目的 DataFrame 保留在同一變量中。

>>> df.dropna(inplace=True)
>>> df
     name        toy       born
1  Batman  Batmobile 1940-04-25

相關用法


注:本文由純淨天空篩選整理自pandas.pydata.org大神的英文原創作品 pandas.DataFrame.dropna。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。