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