1.1重复值的查看,带参数可以传入列,也可以不带:
df.duplicated(subset=" ")
1.2重复值的处理(删除)
删除整体数据的重复值,每个字段都一样的行
带参数inplace=True改变原始数据,不带参数默认不改变
df.drop_duplicates(inplace=True)
按照某几列去重,是个列表的形式传入不同的列名:
df.drop_duplicates(subset = [ " " , " " ])
删除后的保留行keep参数:
keep参数默认留重复的第一行,也可以保留最后一行
传入参数keep = "last"
传入keep = "False"时候把重复值全部删除,不做保留
2.1缺失值的查看:
有没有缺失值
df.isnull()
不缺失数据
~df.isnull()
查看哪列有缺失值
df.isnull().any(axis=0)
查看缺失值的个数
df.isnull().sum(axis=0)
查看缺失值的比例
df.isnull().sum(axis=0)/df.shape[0]
2.2缺失值的处理(填充)
df1.fillna(0)
fillna(0)填充所有空白为0
按列名填充相应的值,盲目添加
df.fillna({"性别":"男","年龄":"10"})
按照不同方式填充缺失值----性别众数填充,年龄平均值填充,收入中位数填充
df.fillna(value={"sex":df["sex"].mode()[0],"age":df["age"].mean(),"income":df["income"].median()})
2.3缺失值的处理(删除):
df.dropna()
dropna删除有缺失的行
df.dropna(how = 'all')
how = 'all'删除全部为空的行