跳到主要内容

R箱线图

提示
  1. 箱线图的特点:箱线图能够有效地显示数据的分布情况,特别是数据的对称性和偏斜性。
  2. R中箱线图的创建:在R中,使用boxplot()函数来创建箱线图,可以从数据集中选择特定列进行绘制。
  3. 箱线图的自定义:R允许为箱线图添加标题、轴标签和新颜色,甚至可以使用凹槽来比较不同数据组的中位数,提供了丰富的定制化选项。

箱线图是一种图表,可以很好地指示数据中的值如何分布。

箱线图提供了数据对称性和偏斜性的一些指示。

创建箱线图的数据集

在 R 中,首先我们需要加载我们想要创建箱线图的数据集。

在本教程中,我们将使用内置的名为 mtcars 的数据集来创建一个箱线图。

让我们看看我们将使用的数据集的前六行,

# 使用 head() 加载 mtcars 数据集的前六行
head(mtcars)

输出

                  mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1

我们将为这个数据集创建一个箱线图。

在 R 中创建箱线图

在 R 中,我们使用 boxplot() 方法来创建箱线图。例如,

# 为 airquality 数据集的臭氧读数创建箱线图
boxplot(mtcars$mpg)

输出

创建箱线图的输出

在上面的例子中,我们使用了 boxplot() 函数和 $ 运算符来创建 mtcars 数据集的 mpg 读数的箱线图。

我们可以传递额外的参数来控制我们的图表的外观。

在 R 中为箱线图添加标题、标签、新颜色

我们可以为箱线图添加标题、为轴提供标签、并改变箱线图的颜色。例如,

# 为箱线图添加标题、标签、新颜色
boxplot(mtcars$mpg,
main="里程数据箱线图",
ylab="每加仑英里数(mpg)",
xlab="气缸数量",
col="橙色")

输出

在 R 中为箱线图添加标题、标签和新颜色的输出 在上图中,我们可以看到已经添加了标题、x轴和y轴的标签,并更改了箱线图的颜色。

这里,

  • main - 添加标题 "Mileage Data Boxplot"
  • xlab - 为 x 轴添加标签 "No. of Cylinders"
  • ylab - 为 y 轴添加标签 "Miles Per Gallon(mpg)"
  • col = "Orange" - 将箱线图的颜色改为橙色

R 中的箱线图公式

在 R 语言中,函数 boxplot() 也可以接受形如 y~x 的公式,其中 y 是一个数值向量,根据 x 的值进行分组。

例如,在我们的数据集 mtcars 中,每加仑英里数 mpg 根据汽车中的气缸数量 cyl 进行分组。

让我们来看一个例子,

boxplot(mpg ~ cyl, data = mtcars,
main = "Mileage Data Boxplot",
ylab = "Miles Per Gallon(mpg)",
xlab = "No. of Cylinders",
col = "orange")

输出

箱线图公式输出

在上面的例子中,我们为 mpgcyl 之间的关系创建了一个箱线图。注意代码

boxplot(mpg ~ cyl, data = mtcars,
...
)

这里,

  • mpg ~ cyl - 每加仑英里数 mpg 根据汽车中的气缸数量 cyl 进行分组
  • data = mtcars - 数据取自 mtcars 数据集

从上图可以清楚地看出,气缸数量较少意味着每加仑英里数更高。

在 R 中为箱线图添加凹槽

在 R 语言中,我们可以在箱线图中添加凹槽,以了解不同数据组的中位数彼此匹配的程度。例如,

boxplot(mpg ~ cyl, data = mtcars,
main ="Mileage Data Boxplot",
ylab ="Miles Per Gallon(mpg)",
xlab ="No. of Cylinders",
col ="orange",
notch = TRUE)

输出

在 R 中为箱线图添加凹槽的输出

在上面的例子中,我们在箱线图中添加了凹槽,以了解不同数据组的中位数彼此匹配的程度。

注意:如果凹槽重叠,我们可以认为这些中位数彼此相等。