使用 Caret R 包进行数据可视化

R 中的 caret 包旨在简化应用机器学习的过程。

解决数据问题的关键在于理解您拥有的数据。您可以通过数据可视化快速总结属性来做到这一点。

R 中有很多用于汇总数据的包和函数,这可能会让人不知所措。对于应用机器学习而言,caret 包提供了一些关键工具,可以快速为您提供数据的摘要。

在本帖中,您将发现 caret R 包中可用的数据可视化工具。

使用我的新书 Machine Learning Mastery With R 快速启动您的项目,其中包含分步教程和所有示例的R 源代码文件。

让我们开始吧。

Caret 包

Caret 包主要用于简化模型训练、模型性能评估和调优。它还具有许多方便的数据可视化工具,可以快速让您了解正在处理的数据。

在本文中,我们将介绍以下 4 种数据可视化方法:

  • 散点图矩阵:用于在成对图中比较实值属性的分布。
  • 密度图:用于比较属性的概率密度函数。
  • 箱线图:用于汇总和展示属性的分布情况。

每个示例都是独立的,因此您可以将其复制并粘贴到您自己的项目中,并根据您的需求进行调整。所有示例都将使用 R 自带的鸢尾花数据集。这是一个分类数据集,提供了三种鸢尾花及其花瓣和萼片测量值(厘米)的 150 个观测值。

需要更多关于R机器学习的帮助吗?

参加我为期14天的免费电子邮件课程,了解如何在您的项目中使用R(附带示例代码)。

点击注册,同时获得该课程的免费PDF电子书版本。

散点图矩阵

散点图矩阵显示一个散点图网格,其中每个属性都与其他所有属性进行绘制。它可以按列或行读取,每个图都会出现两次,允许您从两个角度考虑空间关系。

比仅绘制散点图更进一步的是,还可以包含类别信息。这通常通过按类别值给每个散点图中的点着色来实现。

下面的示例显示了鸢尾花数据集的散点图矩阵,包含所有四个属性的成对散点图,并且散点图中的点按类别属性着色。

Scatterplot Matrix of the Iris dataset using the Caret R package

使用 Caret R 包的鸢尾花数据集的散点图矩阵

密度图

密度估计图(简称密度图)用于总结数据的分布。与直方图类似,它总结了属性值与观测数量之间的关系,但不是频率,而是将关系总结为连续的概率密度函数 (PDF)。这是给定观测值具有给定值的概率。

通过按观测值的类别值分隔每个属性,可以进一步改进密度图。这有助于理解单属性与类别值之间的关系,并突出显示将属性值区分到类别的有用结构,例如线性可分性。

下面的示例显示了鸢尾花数据集的密度图,展示了每个属性与每个类别值关系的 PDF。

Density Plot of the iris dataset using the Caret R package

使用 Caret R 包的鸢尾花数据集的密度图

箱线图

箱线图(简称箱图)通过显示第 25 和第 75 百分位数的箱体、第 50 百分位数(中位数)的箱体内的线以及均值的点来总结给定属性的分布。须线显示箱体高度的 1.5 倍(称为四分位距),这表示数据的预期范围,而超出须线的任何数据都被假定为异常值并用点标记。

同样,每个属性都可以根据其观察到的类别值进行汇总,让您了解属性值与类别值之间的关系,这与密度图非常相似。

下面的示例显示了鸢尾花数据集的箱线图,为给定属性的每个类别值显示一个单独的箱体。

Box plots of the iris dataset using the Caret R package

使用 Caret R 包的鸢尾花数据集的箱图

总结

在本帖中,您了解了使用 caret R 包的三个快速数据可视化方法,这些方法可以帮助您理解您的分类数据集。

每个示例都是独立的,您可以将其复制并粘贴到您自己的项目中,并针对您的问题进行调整。

在R中发现更快的机器学习!

Master Machine Learning With R

在几分钟内开发您自己的模型

...只需几行R代码

在我的新电子书中探索如何实现
精通 R 语言机器学习

涵盖自学教程端到端项目,例如
加载数据、可视化、构建模型、调优等等...

最终将机器学习应用到您自己的项目中

跳过学术理论。只看结果。

查看内容

2 条关于“使用 caret R 包进行数据可视化”的回复

  1. AlionaBER 2016年4月19日 上午5:54 #

    感谢这篇文章,我发现它非常有帮助。对于大型数据集,您可能希望移除密度图中的 rug(pch = “”)以加快绘图速度。
    我有一个关于变量顺序/序列的问题。我能否让它们按照属性在数据集中存储的顺序出现?

    • AlionaBER 2016年4月20日 上午6:32 #

      我解决了:使用了 lattice 图形的属性来更改 featurePlot() 函数。

留下回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。