pandas入门(十)

上一篇:pandas入门(九)

移除重复数据

DataFrame中出现重复行有多种原因。下面一一讲解,先举个例子。
在这里插入图片描述

=====================================
DataFrame的duplicated方法返回一个布尔型Series,表示各行是否是重复行(前面出现过的行)
在这里插入图片描述

=====================================
还有一个与此相关的drop_duplicates方法,它会返回一个DataFrame,重复的数组会标为False
在这里插入图片描述

=====================================
这两个方法默认会判断全部列,可以指定部分列进行重复项判断。有一列值,且只希望根据k1列过滤重复项
在这里插入图片描述

=====================================
duplicated和drop_duplicates默认保留的是第一个出现的值组合。传入keep='last’则保留最后一个
在这里插入图片描述

利用函数或映射进行数据转换

在这里插入图片描述

=====================================
添加一列表示该肉类食物来源的动物类型。
先编写一个不同肉类到 动物的映射。
在这里插入图片描述

=====================================
Series的map方法可以接受一个函数或含有映射关系的字典型对象,即有些肉类的首字母大写了,而另一些则没有。需要使用Series的str.lower方法,将各个值转换为小写

在这里插入图片描述

=====================================
可以传入一个能够完成全部这些工作的函数
在这里插入图片描述

使用map是一种实现元素级转换以及其他数据清理工作的便捷方式。

替换值

利用fillna方法填充缺失数据可以看做值替换的一种特殊情况。
map 可用于修改对象的数据子集
而replace则提供了一种实现该功能的更简单、更灵活的方式。
在这里插入图片描述

=====================================
-999这个值可能是一个表示缺失数据的标记值。要将其替换为pandas能够理解的NA值,利用replace来产生一个新的Series(除非传入inplace=True)

在这里插入图片描述

=====================================
想一次性替换多个值,可以传入一个由待替换值组成的列表以及一个替换值
在这里插入图片描述

=====================================
要让每个值有不同的替换值,可以传递一个替换列表
在这里插入图片描述

=====================================
传入的参数也可以是字典
在这里插入图片描述

注:data.replace方法与data.str.replace不同,后者做的是字符串的元素级替换。

++++++++++++++++++++++++++++++++++++

下一篇:pandas入门(十一)

发布了75 篇原创文章 · 获赞 117 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_42893334/article/details/103650873