《利用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 进行数据分析 第二版》 -写在开始之前

 

posted @ 2020-08-22 23:07  诡刺-ThornSoul  阅读(290)  评论(0编辑  收藏  举报