Python数据分析之数据清洗
2017-05-17 本文已影响381人
罗罗攀
good data decides good analyse
数据清洗,是数据分析中不可缺少的一个环节,其处理的好坏在很大程度上影响着数据分析的结果。而且以前听老师说过数据清洗占整个的数据分析的一半时间以上(汗。。。数据清洗也是一个大学问啊)。
查看空缺值
首先读入文件:
import pandas as pd
test = pd.read_excel('C:/Users/luopan/Desktop/test.xlsx',sheetname='Sheet1')
test

我们可以看出有一个nan,李四的数学成绩也是不符合常理的。我们通过isnull函数查看数据的空缺值:
test.isnull()

通过下面命令计算每列数据的空缺值:
test.isnull().sum()

对于不符合常理的数据也可进行设置为空缺值:
test1 = pd.read_excel('C:/Users/luopan/Desktop/test.xlsx',sheetname='Sheet1',na_values=['750'])
test1

过滤缺失值
test1.数学[test1.数学.notnull()]

去掉缺失值
test1.dropna()

test1.dropna(how='all')

加入all参数的意思:行全为nan才会drop掉。
填充缺失值
前一个值填充:
test1.fillna(method='ffill')

后一个值填充:
test1.fillna(method='bfill')
用列的均值填充:
test1.fillna(test1.mean())

等距填充:
test1.interpolate()