資料視覺化(直方圖、累積分佈圖、箱線圖、點陣圖)
1視覺化探索
1.1 直方圖
這是一種簡單快速探索資料分佈的方式。以Insurance資料集中過的“索賠量”變數Claims為例,觀察該變數的分佈情況。
hist(Insurance$Claims,main="Histogram of Freq of Insurance$Claims")
結果分析:從圖中可以看出觀測樣本多集中與0-50組,一般開說,要求索賠人數大多小於50,且呈明顯下降趨勢,即索賠量越高的樣本量越少。
將引數freq設定為F可以繪製密度直方圖,以各組的概率密度來確定矩形高度,density引數用來為各矩形新增陰影,取值越大陰影越深。
hist(Insurance$Claims,freq=F,density=20,main="Histogram of Freq of Insurance$Claims")
lines(density(Insurance$Claims)) #新增概率密度曲線
hist(Insurance$Claims,breaks=20,labels=T,col="black",border="white",main="Histogram of Freq of Insurance$Claims")
結果分析:將breaks值設定為20來繪圖,labels,col,border這三個引數用來標註各矩形高度(頻率),更改矩形的填充和輪廓顏色。
也可以用str來獲取各組邊界值breaks,頻數counts,概率密度density,中間值mids,繪圖物件名xname,是否等距分組equidist
1.2 累積分佈圖
該圖形中(x,y)的含義為:共有y(百分數)的資料小於或等於該x值,因此,資料中x最大值所對應的y值為1,即100%。
使用Himsc軟體包中的Ecdf()函式來繪製累積分佈圖:
library(Hmisc)
Ecdf(Insurance$Claims,xlab="Claims",main="Histogram of Freq of Insurance$Claims")
結果分析:與上圖中的密度曲線相對比,累積分佈圖中0-100部分的曲線斜率比較大,且0-50部分尤其陡峭,正對應於密度曲線0-100的高取值,這正是兩曲線間相互關係的體現。
繪製各年齡段Age中要求索賠人數Claims
data_plot<-with(Insurance,
rbind(data.frame(var1=Insurance$Claims[Insurance$Age=="<25"],var2="<25"),
data.frame(var1=Insurance$Claims[Insurance$Age=="25-29"],var2="25-29"),
data.frame(var1=Insurance$Claims[Insurance$Age=="30-35"],var2="30-35"),
data.frame(var1=Insurance$Claims[Insurance$Age==">35"],var2=">35")))
....
LT=c(1:4)
Ecdf(data_plot$var1,lty=LT,group=data_plot$var2,label.curves=1:4,col="red",xlab="Claims",main="Cumulative Distribution of Claims by Age")
Ecdf(Insurance$Claims,add=T)
#四個引數lty用於設定曲線的型別,實線或者虛線,group用於設定分許變數,這裡及那個Age作為分組變數,label.curves用於標出按分組變數劃分的各曲線組名,比如四個組別:<25、25-29、30-35和>35,add引數表示是否在上一個輸出圖形中新增圖形。
結果分析:Claims分組曲線與Claims總體曲線的基本趨勢大致相同,都在0-100區間比較陡峭,之後基本平緩,其前三組曲線都止於100左右,最後一組>35則一直延續到400左右,這說明年齡較大投保人的要求索賠量較高。
1.3 箱線圖
我們利用箱線圖探究在各年齡段Age中要求索賠人數Claims的分佈情況。
boxplot(var1~var2,data=data_plot,horizontal = T,main="Distribution of Claims by Age",xlab = "Claims",ylab="Age")
結果分析:>35的組最大值在400左右,這說明年齡較大投保人的要求索賠量較高。
1.4 點陣圖
點陣圖於條形圖本質上是一樣的,也是用於呈現離散型變數各取值水平的分佈情況,不同之處在於用點和背景網格線的形式代替條形來表示。
本文來自部落格園,作者:zhang-X,轉載請註明原文連結:https://www.cnblogs.com/YY-zhang/p/15243427.html