mars.dataframe.DataFrame.dropna#

DataFrame.dropna(axis=0, how=NoDefault.no_default, thresh=NoDefault.no_default, subset=None, inplace=False)#

删除缺失值。

请查看用户指南了解哪些值被视为缺失,以及如何处理缺失数据。

Parameters
  • axis ({0'index', 1'columns'}, 默认值 0) –

    确定是否删除包含缺失值的行或列。

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

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

    在版本 1.0.0 中更改: 传递元组或列表以在多个轴上删除。 只允许单个轴。

  • 如何 ({'任何', '全部'}, 默认 '任何') –

    确定在DataFrame中是否删除行或列,当我们至少有一个NA或所有NA时。

    • ’任何’ : 如果存在任何NA值,则删除该行或列。

    • ’全部’ : 如果所有值都是NA,则删除该行或列。

  • thresh (int, 可选) – 要求那么多非NA值。

  • subset (array-like, 可选) – 其他轴上要考虑的标签,例如,如果您要删除行,则这些将是要包含的列的列表。

  • inplace (bool, 默认值为 False) – 如果为 True,则在原地进行操作并返回 None。

Returns

删除了包含NA条目的DataFrame。

Return type

数据框

另请参阅

DataFrame.isna

指示缺失值。

DataFrame.notna

指示现有的(非缺失的)值。

DataFrame.fillna

替换缺失值。

Series.dropna

删除缺失值。

Index.dropna

删除缺失的索引。

示例

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

删除至少包含一个缺失元素的行。

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

删除所有元素均缺失的行。

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

仅保留至少有 2 个非 NA 值的行。

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

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

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

将包含有效条目的DataFrame保留在同一个变量中。

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