python 数据分析(数据清洗与准备——数据转换)

                                                  数据清洗与准备——数据转换

 

一、删除重复值

    由于各种原因,DataFrame 中会出现重复行。请看如下例子:

        

        

    DataFrame 的 duplicated 方法返回的是一个布尔值 Series,这个 Series 反映的是每一行是否存在重复(与之前出现过的行相同)情况:

        

    drop_duplicates 返回的是 DataFrame,内容是 duplicated 返回数组中为 False 的部分:

        

    这些方法默认都是对列进行操作。我们可以指定数据的任何子集来检测是否有重复。假设我们有一个额外的列,并想基于 "k1" 列去除重复值:

        

        

        

        

    duplicated 和 drop_duplicates 默认都是保留第一个观测到的值。传入参数 keep="last" 将会返回最后一个:

        

        

        

    

二、使用函数或映射进行数据转换

    对于许多数据集,我们可能希望基于 DataFrame 中的数组、列或列中的数值进行一些转换。考虑下面这些收集到的关于肉类的假设数据:

        

        

    假设我们想要添加一列用于表明每种食物的动物肉类型。让我们先写下一个食物和肉类的映射:

        

    Series 的 map 方法接收一个函数或一个包含映射关系的字典型对象,但是这里我们有一个小的问题在于一些肉类大写了,而另一部分肉类没有。因此,我们需要使用 Series 的 str.lower 方法将每个值都转换为小写:

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值