数据可视化(直方图、累积分布图、箱线图、点阵图)

可视化探索

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用于标出按分组变量划分的各曲线组名,比如四个组别:<2525-2930-35>35add参数表示是否在上一个输出图形中添加图形。

 

结果分析: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 点阵图

点阵图于条形图本质上是一样的,也是用于呈现离散型变量各取值水平的分布情况,不同之处在于用点和背景网格线的形式代替条形来表示。

posted @ 2021-09-08 16:43  zhang-X  阅读(2705)  评论(0编辑  收藏  举报