pandas.DataFrame.dropna#
- DataFrame.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)[源代码]#
删除缺少的值。
请参阅 User Guide 有关哪些值被视为缺失以及如何处理缺失数据的详细信息。
- 参数
- axis{0或‘index’,1或‘Columns’},默认为0
确定是否删除包含缺失值的行或列。
0或‘index’:删除包含缺失值的行。
1或‘Columns’:删除包含缺失值的列。
在 1.0.0 版更改: 传递元组或列表以拖放到多个轴上。只允许一个轴。
- how{‘ANY’,‘ALL’},默认为‘ANY’
当我们至少有一个NA或所有NA时,确定是否从DataFrame中删除行或列。
‘Any’:如果存在任何NA值,则删除该行或列。
‘all’:如果所有值都为NA,则删除该行或列。
- thresh整型,可选
需要许多非NA值。
- subset列标签或标签序列,可选
要考虑的其他轴上的标签,例如,如果您正在拖放行,这些将是要包括的列的列表。
- inplace布尔值,默认为False
如果为True,则原地执行操作并返回None。
- 退货
- DataFrame或无
从其中丢弃NA条目的DataFrame,如果
inplace=True
。
参见
DataFrame.isna
指示缺少的值。
DataFrame.notna
指示现有(非缺失)值。
DataFrame.fillna
替换缺少的值。
Series.dropna
删除缺少的值。
Index.dropna
删除缺失的索引。
示例
>>> 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