pandas 中 dropna()函数

dropna()函数的作用是去除读入的数据中(DataFrame)含有NaN的行。
如下:

>>> 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

使用 dropna() 效果:

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

注意:

在代码中要保存对原数据的修改,需要添加 inplace 参数 ,inplace=True 表示直接在原数据上更改

df.dropna(inplace=True)

例:

dfs = pd.read_excel(path, sheet_name='Sheet1',index_col='seq')  

dfs.dropna(inplace=True) #去除包含NaN 的行

print(dfs)#若不用inplace=True,此处 dfs 结果仍包含NaN

dropna 参数:

  1. axis: default 0指行,1为列

  2. how: {‘any’, ‘all’}, default ‘any’指带缺失值的所有行;'all’指清除全是缺失值的

  3. thresh: int,保留含有int个非空值的行

  4. subset: 对特定的列进行缺失值删除处理

  5. inplace: 这个很常见,True表示直接在原数据上更改

参考


版权声明:本文为qq_27560539原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。