箱形圖是由美國數學家John Tukey(1915.6.16-2000.7.26)在1977年發明的,老爺子已過世,深切緬懷。
John Tukey
箱形圖(Box-plot)又稱為盒須圖、盒式圖或箱線圖,是一種用作顯示一組數據分散情況資料的統計圖。因形狀如箱子而得名。其繪制須使用常用的統計量,能提供有關數據位置和分散情況的關鍵信息,尤其在比較不同的母體數據時更可表現其差異。
IQR = Q3 - Q1,即上四分位數與下四分位數之間的差,也就是盒子的長度。
最小觀測值為Min = Q1 - 1.5 * IQR,如果存在離群點小于最小觀測值,則胡須下限為最小觀測值,離群點單獨以點彙出。如果沒有比最小觀測值小的數,則胡須下限為最小值。
最大觀測值為Max = Q3 - 1.5 * IQR,如果存在離群點大于最大觀測值,則胡須上限為最大觀測值,離群點單獨以點彙出。如果沒有比最大觀測值大的數,則胡須上限為最大值。
在分析數據的時候,箱形圖能夠直觀的幫助我們了解數據的特征:
直觀地識别數據集中的異常值(查看離群點)。
判斷數據集的數據離散程度和偏向(觀察盒子的長度,上下隔間的形狀,以及胡須的長度)。
為了更好的理解箱形圖,模拟一個符合正态分布N(0,1σ2)的數據,比較箱形圖和正态分布曲線,如下圖:
首先我們加載模拟數據mpg,用head()查看數據結構:
library(ggplot2)
data(mpg)
head(mpg[c("class","hwy")]) #因為我們繪圖隻用到兩列,所以隻查看需要的兩列就可以了
ggplot中繪制箱形圖使用的幾何對象是geom_boxplot(),至少需要兩個映射對象,x=>分類變量,y=>數值變量。選用主題theme_bw(),并通過theme()修改坐标軸字體等。
p <- ggplot(mpg, aes(class, hwy, fill =class))
geom_boxplot()
theme_bw()
theme(axis.title = element_text(size = 20),
axis.text = element_text(size = 16, color = "black"),
legend.position = "none")
p
添加擾動點geom_jitter(),并且翻轉坐标軸coord_flip()。
p <- ggplot(mpg, aes(class, hwy, fill =class))
geom_boxplot(notch = TRUE)
theme_bw()
geom_jitter(width = 0.2)
theme(axis.title = element_text(size = 20),
axis.text = element_text(size = 16, color = "black"),
legend.position = "none")
coord_flip()
p
本系列課程主要側重于講解圖形原理,以及在ggplot2中的實現過程,并沒有特意追求美觀,故很多圖的細節部分修飾有限,大家重點理解實現過程。
本期箱形圖就分享到這裡!下期,韋恩圖,孫老濕與你不見不散!
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!