时间:2020-07-17 22:33:27 | 栏目: | 点击:次
dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)参数:
import numpy as np import pandas as pd a = np.ones((11,10)) for i in range(len(a)): a[i,:i] = np.nan d = pd.DataFrame(data=a) print(d)
按行删除:存在空值,即删除该行:
# 按行删除:存在空值,即删除该行 print(d.dropna(axis=0, how='any'))

# 按行删除:所有数据都为空值,即删除该行 print(d.dropna(axis=0, how='all'))
按列删除:该列非空元素小于5个的,即删除该列:
# 按列删除:该列非空元素小于5个的,即删除该列 print(d.dropna(axis='columns', thresh=5))

# 设置子集:删除第0、5、6、7列都为空的行 print(d.dropna(axis='index', how='all', subset=[0,5,6,7]))

# 设置子集:删除第5、6、7行存在空值的列 print(d.dropna(axis=1, how='any', subset=[5,6,7]))

# 原地修改
print(d.dropna(axis=0, how='any', inplace=True))
print("==============================")
print(d)
实例扩展import pandas as pd
data = pd.read_excel('test.xlsx',sheet_name='Sheet1')
datanota = data[data['销售人员'].notna()]
print(datanota)
输出结果:
D:\Python\Anaconda\python.exe D:/Python/test/EASdeal/test.py 城市 销售金额 销售人员 0 北京 10000 张丽丽 1 上海 50000 潇潇 2 深圳 60000 笨笨笨 3 成都 40000 达达 Process finished with exit code 0