DataFrame学习三:数据清洗
三 数据清洗
3.1 去重
data.duplicated() #标记出哪些是重复的(true)
data.drop_duplicates() #直接将重复删除,默认保留第一条
3.2 处理缺失数据
-
isnull方法用于判断数据是否为空数据;
-
fillna方法用于填补缺失数据;
-
dropna方法用于舍弃缺失数据。
data.dropna() # 默认为整行删除
data.dropna(how='all',axis=1,inplace=True) # how=all,是当整行全是na的时候才进行删除
data.fillna({1:2,2:3}) #第二列全部替换为2, 第三列全部替换为3
3.3 异常值检测
(1) 通过逻辑判断来检测数据情况
frame2[frame2['year']>2001]
(2) 把异常的数据替换成0
# 将age的6、158替换成缺失
data_noDup['Age'].replace([158, 6], np.nan)
# 将package的-9替换成0
data_noDup['Package'].replace(-9, 0)