如何才能让你的数据可视化工作更加受领导青睐呢?今天小编就给大家分享五种制图技术,让你在工作时如鱼得水。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-11.png

接下来我将通过五个具体的案例,带领大家一起学习掌握这些技术。

通常在数据科学研究的探索性数据分析(Exploratory Data Analysis,简称 EDA)阶段,研究员们会尝试创建各种可视化效果来研究数据并将其表现出来,从而用图形化手段帮助读者快速理解数据。常用工具是python,借助它里面的各种库:例如 Matplotlib,Seaborn,Plotly 等来实现目标。

# 1. 截断相关矩阵热图

通常我们会使用seaborn创建变量的相关矩阵热图,但是矩阵会出现镜像以及对角线相关度为1的情况。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-1.png

解决方法就是:当我们不传递任何参数时,numpy tril 函数返回矩阵的副本,对角线以下的所有元素就为零。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-2.png

补充:如果我们使用numpy tril函数,矩阵的下半部分将会被清零。

# 2. 检查正态分布

在研究机器学习问题时,一般我们需要找一个连续特征分布的正态性。当我们使用 Seaborn 绘制一个特征的分布图时,就会得到如下图。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-3.png

为了估计出这与正态分布的接近程度,有一种方法就是自己在图上绘制一个正态曲线概率密度函数估计,具体操作是:使用 scipy.stats 模块中的 norm 对象,并将其拟合在图上。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-4.png

黑线就是这个数据的正态概率密度函数图。接下来我们再用数据的对数变换来验证一下。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-5.png

结合上图可以看到,曲线几乎收敛,这说明我们的数据已经转化为正态分布。

# 3. 在分柱状图中显示百分比

比如下面的这个例子,我们想知道有高血压和没有高血压的心脏病患者死亡情况,进而了解有高血压患者存活比例以及没有高血压患者存活比例。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-6.png

接着我们在柱状图中使用补丁对象来计算百分比,并获取放置百分比文本的坐标。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-7.png

最终我们就可以得出结论:在血压正常的患者中,有71%的患者存活了下来,而高血压患者只有63%存活下来。

# 4. 用条形图来显示数据中空值的百分比

在对数据集进行探索性数据分析(Exploratory Data Analysis,简称 EDA)之前,我们首先要做的就是检查空值。通常我们使用简单的 isnull 函数来检查空值,以获取特征空值的计数。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-8.png

为了帮助读者可以一目了然地了解数据集的稀疏性,我们可以使用两个水平条形图来实现这个目的,如下图所示。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-9.png

然后就能很快得出结论:三个特征中存在缺失值,还有明确的百分比数值;当然这个条形图让缺失值计数的提取过程赋有了美感。

# 5. 地理数据

当我们拥有一些地理数据时,我们就可以使用 plotly/plotly express 库中的 chorolpleth 对象将我们的数据绘制在地图上。地图上的位置可以使用 GeoJSON 进行引用,同时通过内置的几何体识别国家名称,这使引用国家也变得更加容易。

需要注意的是,我们需要特定的数据集、地点(国家)、颜色来指定我们要分析的连续特征、读取地点参数的模式以及最后在悬停时显示的数据。

https://oss-images-qyum.oss-cn-zhangjiakou.aliyuncs.com/undefineddocs-可视化技术-pic-10.png

# 小结

最后希望这些技术能给你的探索性数据分析(Exploratory Data Analysis,简称 EDA)带来价值。当我们拿到某种数据时,必须随机应变,以可视化的方式来容纳和展示数据,以便我们能够从中获得想法,从而推动进一步分析数据集。

Data Visualisation Tips to Make Your Work Stand Out