最近在做“对比excel,学习pandas系列”,前面发了一篇 很受读者喜爱,今天给大家介绍一下excel和pandas实现数据清洗的种方式
1.处理数据中的空值
我们在处理真实的数据时,往往会有很多缺少的的特征数据,就是所谓的空值,必须要进行处理才能进行下一步分析
空值的处理方式有很多种,一般是删除或者填充
Excel通过“查找和替换”功能实现空值的统一替换:
通过“定位”删除空值:
pandas处理空值的方式比较灵活,可以使用dropna函数删除空值
import pandas as pd data=pd.read_csv('成绩表.csv',encoding='gbk') data.dropna(how='any')
用fillna函数实现空值的填充
①使用数字0填充数据表中的空值
data.fillna(value=0)
②使用平均值填充数据表中的空值
data['语文'].fillna(data['语文'].mean())
2.删除空格
excel中清理空格很简单,直接替换即可
pandas删除空格也很方便,主要使用map函数
data['姓名']=data['姓名'].map(str.strip) data
3.大小写转换
excel中大小写转换函数分别为upper()和lower()
pandas中转换函数也为upper()和lower()
data['拼音']=data['拼音'].str.upper() data
data['拼音']=data['拼音'].str.lower() data
4.更改数据格式
excel中更改数据格式通过快捷键“ctrl+1”打开“设置单元格格式”:
pandas使用astype来修改数据格式,以将“语文”列改成整数为例
data['语文'].dropna(how='any').astype('int')
5.更改列名称
excel中更改列名称就不说了,大家都会
pandas使用rename函数更改列名称,代码如下:
data.rename(columns={'语文':'语文成绩'})
6.删除重复值
excel的功能区“数据”下有“删除重复项”,可以用来删除表中的重复值,默认保留最第一个重复值,把后面的删除:
pandas使用drop_duplicates函数删除重复值:
data['数学'].drop_duplicates() #默认删除后面的重复值 data['数学'].drop_duplicates(keep='last') #删除第一项重复值 7.修改及替换数据
excel中使用“查找和替换”功能实现数值的替换
pandas中使用replace函数实现数据替换
data['姓名'].replace('成 功','失 败')