在R中创建Whisker和盒图
R中的箱形图是衡量和可视化数据分布的紧密程度的好方法。
这些有时也称为箱形图和晶须图。
每个数据分布都有一定的集中趋势度量-均值,中位数和众数。
一些分布紧密地位于中值和平均值附近,而其他分布则分布在广泛的值范围内,并且还包含许多离群值。
箱形图使您可以使用五位数摘要检查数据。
这些是:
中位数–集合的中间值–称为Q2
第一个四分位数-中间值和集合最小值之间的中间数字-称为Q1
第三四分位数-中间值与集合中最大数之间的中间数-称为Q3
Q1和Q3之间的距离称为四分位间距– IQR。
最小值– Q1 -1.5 * IQR –不是最小值
最大值– Q3 + 1.5 * IQR –不是最大值
任何超出最小值和最大值限制的数据点均被视为异常值。
因此,箱形图可以为您提供有关数据分布的全面概念。
在R中创建箱形图
可以使用R中的boxplot()
函数创建箱形图。
让我们尝试使用R的内置空气质量数据集创建第一个箱形图。
这是一个具有6列153行的数据框,记录了诸如风速,温度,臭氧量等天气数据。
让我们尝试为数据集的风速列绘制箱形图。
boxplot(airquality$Wind)
R中的箱形图
释义:
穿过框的粗线表示数据集的中位数,大约为10。
框的下半部分看起来较大,上半部分看起来更大-表示小于中位数的值更加分散。
框的上下边界分别代表Q3和Q1点。
延伸到框外的较小水平线(称为晶须)代表最小值和最大值。
最高标记上方的小圆圈是异常值。
让我们尝试为数据集中的另一个变量绘制箱形图。
boxplot(airquality$Ozone)
箱形臭氧
可以观察到,该数据集在最大标记之上有两个异常值,并且数据在中值之上分散。
建立多个箱形图
R还可以使用多个箱形图比较两个变量的分布。
> boxplot(airquality$Ozone,airquality$Temp, names=c('Ozone','Temperature'),col=c('red','orange'))
多箱图
该命令使用两种不同的颜色来区分变量。
函数的名称属性提供了不同图的名称。
用箱形图绘制变量关系
还可以将变量与数据集中的任何其他类别变量进行比较。
例如,如果我们希望查看每个月的温度分布,则只需在公式部分中包括两个变量,例如– Temp~Month,将数据设置为数据框名称。
Temp~Month表示我们希望根据月份了解Temp的关系。
现在让我们执行该命令,并尝试构建水平图而不是垂直图。
boxplot(Temp ~ Month, data=airquality, horizontal= TRUE, col=c('red','green'))
在R中的箱形图上添加槽口
有时会在添加槽口的情况下看到箱形图的变化。
槽口只是盒子中间的小压缩,由宽度和高度确定。
缺口大小相似的两个图告诉我们,这两个图可能是根据从相同分布中选择的数据绘制的。
同样,如果两个凹口不重叠,则分布的中位数可能会不同。
可以添加缺口,将缺口参数设置为TRUE。
让我们对上面的多重图进行刻槽设计。
> boxplot(Temp ~ Month, data=airquality, horizontal= TRUE, notch= TRUE, col=c('red','green','orange','blue','purple'))