探索探索性数据分析!

资料来源:统计机构

在过去六个月的空闲时间里,我一直在追求数据科学,并且一直在思考我作为初学者应该首先写哪个主题(或说博客)。 没有比我在数据科学领域的第一个项目更合适的项目了,该项目正在对Haberman数据集执行探索性数据分析(EDA)。

什么是EDA?

用通俗易懂的话来说,探索性数据分析就是试图在没有使用绘图工具和线性代数的数据集的先验知识的情况下尝试探索数据。

类似的类比可以是软件的黑盒测试。 在这里,我们手头的数据集不够清晰(就像我们不知道软件是什么一样),并尝试使用统计绘图来找出一些见解。 在我们可以试用众多ML算法并研究其在数据上的性能之前,EDA是要在任何数据集中执行的首要步骤之一。

关于数据集:

在进入分析部分之前,这里是有关执行EDA的数据集的简要概述。在我的分析中,我使用了HABERMAN数据集。 数据集包含1958年至1970年在芝加哥大学比林斯医院进行的一项研究,该研究涉及接受乳腺癌手术的患者的生存情况。数据集可在此处获得(感谢Kaggle帮助吸取ML / AI工程师拥有如此出色的数据存储库)。 在我们的目标中,我们尝试从数据中使用“患者年龄”,“运营年限”,“辅助节点”(可以称为自变量)等功能来查看“生存状态”(也是患者的因变量)我们的分析)。

现在我们已经学习了有关数据的基础知识,让我们着手处理数据。

加载库和数据:

加载所需的库

我已使用Jupyter Notebook进行分析。 在这里,我们仅导入加载数据,对数据执行操作并绘制它们所需的所有必需库。

将列插入Pandas Data Frame

由于Kaggle的数据(csv文件)没有功能名称,因此我将功能作为数据框中的列名称添加了功能名称,这可能会导致一些歧义。

平衡与不平衡数据:

Haberman数据集不平衡

如果数据集具有等于或近似等于(例如60–40或40–60分割)因变量的数据点数(也称为类标签),则称该数据集为平衡的。 我们的数据似乎是不平衡的,因为存活患者的数据点为75%,其他类别患者的数据点仅为25%。 注意,与不平衡数据集相比,对不平衡数据需要以不同的方式进行数据分析。

二维散射图

散点图-患者年龄与辅助结节

二维散点图通常是数据集中两个要素之间的图。 在这里,我们在x轴上绘制了“患者年龄”,在y轴上绘制了“辅助节点”。 我们用颜色区分了这些类别(蓝色-幸存的和橙色-未幸存的)。 通过快速查看散点图,我们可以看出,年龄小于32岁的患者始终可以存活,无论他/她有多少个辅助结节。 我们无法从此图中推断出太多,因为它高度重叠。

分布图:

单变量分布图给出了该特征的累积分布,这些类型的图可以帮助找出我们数据中哪些特征比其他特征更重要,以帮助我们预测患者的生存状况。 变量的累积分布函数给出该变量在任何给定点上已出现的数据点的总百分比。

患者年龄的单变量分析

尽管从患者年龄的单变量分析中不能得出很多结论,但我们看到小于35岁的患者总是可以存活,而35至40岁之间的患者存活的机会更大。

辅助节点的单变量分析

从图中可以看出,由于没有辅助淋巴结的患者大多倾向于存活,因此辅助淋巴结的数目可能是确定生存状态的有用特征。

箱形图:

箱形图用于表示给定变量的特定百分比值25、50和75。

病人年龄的箱形图

从箱形图中可以推断出,年龄在45岁以下的患者大多可以存活,其误差值为25%。 同样,年龄在60岁以上的患者也无法存活,其误差值为25%。

配对图:

配对图基本上是在绘制我们在数据中具有的特征对。 这些随着要素数量的增加而难以绘制和推断。 因为随着特征数量的增加,地块的数量也会增加。 对于Haberman数据集,我们有4个特征,这使我们得出4C2的地块数。

我们的数据集的成对图的局部图像

在成对绘图的情况下,由于重叠很多,我们无法从绘图中得出很多结论。

联合图:

联合图及其密度分布可用于多变量分析或单变量分析。 该图还可以帮助识别特征是否相关。

具有生存状态的辅助节点的联合图

从联合地块中可以看出,大多数幸存者的辅助结点为零,而没有幸存者的结点数为2至5。

我们的分析摘要:

总结我们的分析,我们使用了单变量,二维散点图,箱形图,成对图和联合图进行探索性数据分析,但是这些并不是EDA的唯一方法,因为像3-D这样的更多图可以使用D散点图,小提琴图,热图。 有时,原始数据(例如MEAN,MEDIAN和MODE)可以提供有关数据的深刻见解。 EDA是机器学习的第一步,也是第一步,它可以帮助我们更好地理解手中的数据,从而在其之上构建良好的模型。

EDA清单:

  1. 在开始构建ML模型之前,请始终对数据执行EDA。
  2. 在对数据集执行EDA之前,直接设置目标(例如在Haberman中查找生存状态)。
  3. 尝试获取见解并利用所有可用的绘图工具。
  4. 有时数据非常重叠(例如在Haberman中),因此请学习使用它。
  5. EDA就是您在使用所有可用工具来剖析数据并从中获得一些见识的热情。 所以,去做个夏洛克!

资料来源:BBC

参考文献:

  1. https://www.kaggle.com/gilsousa/habermans-survival-data-set
  2. www.appliedaicourse.com
  3. https://seaborn.pydata.org