15种数据挖掘技巧教你如何探索原始数据

原创:MarTechApe

0.png

若你是正在找工作的在校生,那你在面试的时候应该常被问到这样一个问题:如果给你一个全新的完全不熟悉的数据,你会怎样处理和分析?如果你已经工作一段时间了,相信你曾经也面临过这样的焦虑:看着一堆原始数据,不知道下一步该做什么。虽然数据科学的算法已经很完善,但是如何处理原始数据并将其转化成有意义的洞察仍然是一门艺术。

今天这篇文章,我们将用一个关于汽车的数据集,来为大家展示一下处理原始数据的一些结构性方法和如何使用这些数据挖掘技巧

▲汽车数据集sample

▲汽车数据集sample

1. 唯一值统计

在数据探索过程中,第一件可以去探究的事情就是查看在分类型的变量(categorical)中有多少个唯一值(Unique Value)。这样可以给我们一个非常泛泛的感觉,知道数据是关于什么的。下图给出了汽车数据集中不同列的特别值的统计。

2.png

正如图所示,make这一列有超过20个Unique Value,,这意味着在这个数据集中,我们将会看到关于20多个汽车品牌的数据。这20个品牌的汽车有8种燃油系统,7种不同的引擎,5种不同的车身设计...

2. 频率统计

频率统计是指找出每个值在列中出现的频率。例如,下图是在品牌列中每个值出现的频率统计。

3.png

结果显示,品牌列中的各个值中,丰田出现的次数最多,占比达到16%,道奇出现的频率最少,只有4%。通过这种分析,可以很好地了解分类变量的情况。

3. 方差

以上是针对分类变量,我们可以进行的分析。那在分析数值时,我们可以先进行一些非常基础的分析,比如一些基本信息:最小值、最大值和方差是非常有用的。方差能很好地表明数值是如何分布的。

如下图所示,它显示了数据在一些数值型变量(价格,每分钟转速的峰值,汽车整备质量,轴距,高度)中的分布情况。并且按照方差的大小将数值型变量进行了排序。。可以清楚的看到,价格这一项方差最大,说明数据集中汽车价格的区间分布较广。高度这一项的方差很小,说明我们将要分析的汽车的高度还是比较接近的。

4.png

4. 帕累托分析

帕累托分析是一种比较创新的进行数据处理和分析的技巧。它帮我们来理解重要性。帕累托的二八原则可以有效地用于数据挖掘和分析。在汽车数据集中,我们可以将帕累托分析应用到价格列,如下所示。

5.png

分析显示,80%的价格低于17075美金。这个信息可以很好的帮助我们判断和回答,多少价格以上的车可以被认为是高价格的车。

5. 柱状图

柱状图是数据科学家最喜爱的数据处理技巧之一。柱状图给出了大多数值所在的范围,还能看出数据中是否存在“一边倒”的情况。如果我们用价格列的数值绘制一个柱状图,它会显示出价格的范围,最大值和最小值。从图中可以看到,绝大多数(63个)的价格在5675到8512这个区间范围,28375和31212这两个价位分别仅出现过1次。

6.png

6. 数值列中的相关性的热点图

以上都是对单一的数值型变量进行分析可以采用的可视化,在研究完每一个变量自己的情况以后,我们需要做的是探究变量和变量之间的关系。相关性是指两个事物之间的相互关系或联系。在商业分析和日常生活中,分析事物之间的联系是非常重要和有帮助的。在数据处理过程中,寻找数据之间的相关性非常有用,因为它展现了数据集中各个变量之间是如何相互关联的概念

查看数值型变量之间相关性的最佳方法之一是使用热点图。以汽车数据集为例,下图所示是数值型变量之间相关性的热点图

7.png

在相关性的热点图中,颜色会随着相关性的变高而变深。正如相关性热图所示,highway_mpg和city_mpg之间存在高度相关性。除此之外,还可以看到其他数值型变量之间的相关性。

8.png

7. 数值型变量之间的相关性和趋势线

一旦有了相关性的热点图,下一步就是查看两个特定数值型变量之间的相关趋势。从热点图中我们可以看到,高速路段每加仑行驶的英里数和城市间每加仑行驶的英里数之间存在高度相关性,我们不妨画一下这两个变量之间的趋势线。下图显示了汽车数据集中高速路段每加仑行驶的英里数和城市间每加仑行驶的英里数之间的相关性。

这种相关性可视化清楚地显示了两个列之间明显的正相关性

8. 分类变量的克莱姆相关系数

相关性分析常用于数值型变量之间,也许大家会有这样一个疑问,分类型变量之间可以做相关性分析吗?答案是肯定的。Cramer-V是一种非常有用的数据挖掘技巧,可以发现分类变量之间的相关性。Cramer-V的结果也可以用热点图来展示。

在汽车数据集中,有许多分类变量,下图根据所有分类列之间的Cramer-V得到的热点图

9.png

可以看出,燃油系统和燃料类型是高度相关的

9. 两个分类变量之间的相关性

和数值型变量一样,在使用Cramer-V矩阵检查分类变量之间的相关性之后,我们还可以进一步研究任意两个分类变量之间的相关性。这可以使用气泡图来完成,气泡的大小表示出现的次数。

10.png

你会发现大部分的燃油系统(fuel_systems)都有对应的燃料类型fuel_type,这就解释了为什么这两个分类之间有很强的相关性。

10. 聚类分组

当今,我们生活在一个拥有海量数据的世界,处理这些海量数据很容易让人不知所措。为了在这个数据不断增长的世界中不迷失自己,我们需要从海量的数据中“跳出来”,学着以“上帝视角”来看待和分析数据。

从数据分析的角度看,将数据进行聚类可以让我们拥有“上帝视角”。将数据进行聚合可以让我们对数据有一个整体的认识,而不是分散的数据点。你可以想象一下,你是喜欢查看混杂在一起的数百万条数据,还是查看分类过的数据集合?答案显然是后者,因为人类更倾向于自上而下的理解方式。

数据科学可以帮助我们实现这一目标:从大量数据中创建几个组。在数据科学术语中,分组的过程也称为聚类或细分。聚类分析和细分是一种优秀的数据处理技巧,因为它能很好地概括数据,使其看起来更清晰明朗。

作为细分和聚类分析的第一步,首先要决定将数据分成几组。决定聚类分组显示了数据是如何被分成不同组的。

11.png

从图中可以看出,如果我们把所有的数据分成3组,我们将会得到数据差不多大小的3组数据。如果分成4组或5组,会有某一个组的数据较少的情况。

11. 聚类或分类

一旦确定了分组的数量,下一步就是将所有数据划分为特定数量的组和细分。

图中显示的是所有数据聚类成三组的结果,这个结果在之后的数据处理中非常重要

12.png

想要让聚类的方法有效,了解聚类后的各组代表什么非常必要。在这个例子中,我们观察到决定类别的重要变量是汽车的整备质量和长度。根据这两个指标,我们可以把汽车分为三类-小型汽车,中型汽车,大型汽车。这种聚类练习在数据挖掘和处理的过程中非常有用。

12. 整体的异常值判断

如何发现异常值是面试中非常喜欢被问到的问题。在数据中发现异常值通常称为异常检测。这些异常值代表一些不寻常的、罕见的、异常的或意料之外的数值。异常值并不一定意味着不好。异常值分析对提高数据分析的质量有非常大的帮助。

数值列中的异常值可以通过标准差分析或孤立森林的算法等各种技术来检测。异常值的分析和检测针对所有数值型变量。

从气泡图中可以看出哪些变量有非常低或非常高的异常值。气泡越大,意味着这一列中存在的异常值越多。下图显示了汽车数据集中不同列的异常值的判断。可以看出,气缸这一变量既存在极小的异常值,也存在极大的异常值,但是存在较多的偏高的异常值。

13.png

13. 单个变量的异常值分析

一旦发现了哪些变量有非常高或非常低的值,接下来就可以具体分析各个变量。

箱线图是用来深入分析各个变量异常值很好的可视化图,正常范围是由最左和最右的两条垂直线表示的,显示在这个正常范围之外的点就是异常值。左边的点代表低异常值,右边的点代表高异常值

14.png

以上面的例子为例,上图显示了对汽车数据集中马力这一个变量的异常值分析

14. 多个变量的异常值分析

对海量数据进行分析的重要步骤之一是基于多个变量来查找异常值,通常可以通过使用孤立森林等各种算法来实现。

下方散点图中,异常点用了不同的颜色进行标记(标记为1)。散点图是根据每一列中的异常值绘制出来

15.png

在异常值分析过程中,了解数据点或某一行产生异常值的原因也很重要。在汽车数据集的例子中,可以看到大多数异常值都与weight和length中的高数值相关

15. 其他专业的可视化

到目前为止,我们所看到的大多数可视化都是用的比较经典的图,比如条形图、散点图、柱状图等。然而,在数据挖掘过程中,加入一些专业的可视化技术,如雷达图、神经网络图或桑基图,是非常有意义的。

专业的可视化有助于更好地理解数据。雷达图可以帮助进行比较;神经网络图可以帮助理解哪些变量的组合可能会成为影响关键指标的重要特征,也可以帮助理解隐藏或潜在的特征变量;桑基图表在进行路径分析时非常有用。

▲用于比较的雷达图

▲用于比较的雷达图

▲用于发现潜藏特征的神经网络图

▲用于发现潜藏特征的神经网络图

▲用于路径分析的桑基图

▲用于路径分析的桑基图

还有更多的数据挖掘技巧,但以上15种技巧已经足够开启你的数据分析之路,这些数据挖掘技巧可以很快的帮助你看懂无从下手的原始数据。

想要全方位锻炼自己的数据分析能力,在简历上放上专业的数据分析项目,系统性掌握数据分析周期的每一步:数据收集→数据清洗→数据可视化→变量探索→建立模型→调试参数→优化→报告,那就千万不要错过MarTechApe携手全球最大广告集团WPP数据总监与分析经理共同开设的《营销组合建模企业级实战训练营》第9期!

19.png

训练营的学员收获了:

  • 真正意义上的“用数据和模型解决营销中最重要的问题”的经历。

  • 熟练掌握SQL、R、Tableau等时下最流行的数据处理语言,并用这些技能解决实际问题。

  • 大大提高Media/Advertising Industry的商业意识,熟悉不同媒介渠道的广告活动对不同商业指标的不同回报率(ROI)与有效性(Effectiveness),学会用“营销效果”的视角看待营销活动,理解各大公司市场营销部门、消费者洞察部门的痛点。

  • 跳出学校作业的框架,上手真正商业情境中、实际工作中的实战案例。让校园与实际工作无缝衔接。将学到的Analytics思维方式泛化到其他应用场景,面对Case Study建立系统性解决思路。

  • 提升项目演示Presentation技能,学会如何从原始数据中挖掘具有意义的故事。为客户解决实际问题,提高Business KPI。

  • 完成项目后,辅导老师将帮助你利用这一个惊艳的项目背景打造最引人注目的简历;所有学员获得内推机会,优秀学员获得一对一面试辅导。

从我们的项目中,毕业了将近200名学生,斩获各大公司数据岗位offer:

20.png

点击下方图片跳转至课程页面,了解项目详情!

Marketing Mix Modeling Bootcamp

营销组合模型训练营(Marketing Mix Modeling Bootcamp)是MarTechApe的宝藏项目,由全球最大广告集团 WPP美国办公室的数据总监以及营销分析经理共同授课。在训练营中,你将学习在真实商业情境中如何用营销组合模型解决广告营销最核心的问题——科学合理地评估不同广告对品牌和销售的影响,以统计模型的结果来科学优化广告预算。

21.png