购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.4 清洗数据

准备好原始数据集后,进行数据清洗。我们先对维基百科数据集进行初步清洗,再清洗TheyWorkForYou数据集。然后,我们尝试合并两个数据集,查看数据的不一致性,以了解需要进行哪些标准化处理。

2.4.1 清洗维基百科数据

查看维基百科数据集的前五行和最后五行,如图2-5所示。

图2-5:维基百科数据的前五行和最后五行

数据清洗的第一个任务是对列名进行标准化:

我们还发现,DataFrame的开始和结束处各有一个空行,并且每个元素末尾都有\n字符。这显然会干扰匹配,因此需要将其移除。

要移除空行,可以使用dropna方法:

使用以下代码移除数据末尾的\n字符:

为了确保Fullname已清洗干净,再次检查其中是否还包含\n字符。

检查显示,有的值开头还有\n,需要移除:

下一个任务是将Fullname列分为Firstname列和Lastname列,以便分别进行匹配。在本例中,我们使用一种简单的方法,即选择第一个子字符串作为Firstname,其余通过空格分隔的子字符串作为Lastname。

可以通过检查Lastname是否包含空格判断该方法的效果。图2-6显示了仍包含空格的剩余Lastname条目。

现在,我们就有了一个足够干净的数据集,可以用于匹配。我们接着处理第二个数据集。

2.4.2 清洗TheyWorkForYou数据

正如之前看到的,TheyWorkForYou数据已经相当整洁,所以此阶段只需将列名标准化,使两个DataFrame的列名一致。一致的列名能使匹配更加轻松:

图2-6:检查维基百科数据中的复合姓氏条目 deODoWEtTeP1EySmEgAIr5K6QLaRK7P2lHQwWzxvXFaJDVO7JVrIxOWiwabjOlV+

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开