《利用Python 进行数据分析 第二版》 -第7章 数据清洗与准备
本章重点内容:
1、处理缺失值
2、数据转换
3、字符串操作
接下来展开详细的说明
1、处理缺失值
缺失值是在处理数据过程经常遇到的情况,对于缺失值的处理,大概有两个方向,一个是过滤缺失值,一个是补全缺失值
过滤缺失值
用到的方法是dropna,具体代码示例如下:
如果是DataFrame对象,dropna会删除NA所在的行,具体代码示例如下:
如果操作中传入how = ‘all’,则表示删除所有值均为NA的行,如下:
如果要删除所有值均为NA的列,可以传入参数axis=1,如下:
补全缺失值
补全就是用我们想要的数据来替换缺失值,用到的方法函数是fillna,具体代码示例如下:
先创建一个有缺失值的DataFrame对象,如下:
将其中NA的缺失值,替换成我们想要的常数,例如0,如下:
如果是想对不同的列传入不同的常数,可以通过传入字典的内容来填充,如下:
如果想通过缺失值之前的数据进行往下填充,可以使用method参数,具体如下:
先创建一个DataFrame对象,如下:
针对第二列的NA缺失值,想向下填充,都是1,如下:
2、数据转换
删除重复值
想创建一个可供操作的DataFrame对象数据,如下:
通过观察我们发现,最后两行是重复的,可以通过drop_duplicates方法来去除重复值,如下:
该方法默认是整个行都重复的数据,如果你是想针对某个列去除重复值,可以通过传入所要处理的列名称,来去除重复值,例如分别针对k1和k2列,如下:
使用函数或映射进行数据转换
先来看两个数据:
数据1:
数据2:
你会发现,这两个数据有关联性,也就是有映射关系,如何合并这两个数据?可以使用map函数,如下:
你会发现最后一行没有匹配成功,因为数据1中,food列最后一行有大写字母,所以需要转换小写字母,如下:
匹配成功,然后再数据1增加一列该数据即可,如下:
3、字符串操作
字符串对象方法
我们看到的或者经常处理的字符串,一般都是有很多空格或者逗号,所以会经常用到split和strip两个函数一起使用,如下:
如果你想把每个字符重新连接在一起,比如用+,可以通过join方法,如下:
以上就是本章重点内容,祝学习愉快
以下链接,可以供你了解这个系列学习笔记的所有章节最新进度
自学笔记系列:《利用Python 进行数据分析 第二版》 -写在开始之前