实验分析-变量分布特征的数据可视化
来源:网络收集 点击: 时间:2024-02-19下面我用一个具体例子来展示:
数据:某校二年级学生共55人,数据表记录了在刚刚结束的体格检查中,55位学生的性别、身高情况及最近一次体育考试成绩。
其中,性别xingbie中,1代表男性,2代表女性;成绩chengji中,1代表优秀,2代表良好,3代表中等,4代表及格。
共55个数据,我共截取了19个数据。

1) 绘制该班身高分布的直方图,并在直方图中添加轴须图和密度曲线,使用灰色填充直方图;
首先把excel数据导入Rstudio软件里,代码如下:
read.csv(file.choose(),header=T)
h-read.csv(file.choose(),header=T)
h
attach(h)
hist(shengao,main=身高直方图,xlab=身高,ylab=频数,xlim=c(100,160),ylim=c(0,15),col=gray)
rug(jitter(shengao,amount=0.1))
lines(density(shengao))
box()
hist(shengao,breaks=12,col=gray,freq=FALSE)
lines(density(shengao))
rug(jitter(shengao,amount=0.1))
结果如图:

2) 绘制该班男女身高分布对比的箱型图;
代码如下:
boxplot(formula(shengao~xingbie))
xingbie.f-factor(xingbie,levels = c(1,2),labels = c(男生,女生))
boxplot(shengao~xingbie,col=c(gold,darkgreen))
结果如图:

3) 绘制该班性别与体育成绩交叉分组对比的身高箱型图,要求男生各组用蓝色表示,女生各组用红色表示,并用文字标示横轴分组信息。
代码如下:
boxplot(shengao~xingbie*chengji)
xingbie.f-factor(xingbie,levels=c(1,2),labels=c(男生,女生))
chengji.f-factor(chengji,levels=c(1,2,3,4))
boxplot(shengao~xingbie.f*chengji.f,col=c(blue,red),xlab=性别~成绩,ylab=身高)
结果如图:

4) 绘制该班男女身高分布对比的小提琴图,要求男、女生组用不同颜色表示,并用文字标示横轴分组信息;这个步骤需要安装vioplot包。
代码如下:
install.packages(vioplot)
library(vioplot)
x1-shengao
x2-shengao
vioplot(x1,x2,names =c(男生,女生),col=c(green,yellow),main=性别身高对比图,xlab=性别,ylab=身高)
结果如图:

5) 绘制该班按体育成绩分组后的身高点图,要求组别标签为黑色,点和学生序号标签颜色按成绩等级分别为优秀红色,良好橙色,中等绿色,及格蓝色,绘图符号为实心三角形。
代码如下:
x-h
attach(x)
chengji-factor(chengji)
x$color-red
x$color-orange
x$color-green
x$color-blue
dotchart(shengao,labels=row.names(x),cex=0.6,groups = xingbie,gcolor = black,color = x$color,pch=17)
结果如图:

分析:
1)可看出此身高图身高平均居中在115-3250px之间。
2)可分析出男生平均身高比女生高,女生最大值与最小值都大于男生。
3)可知,优秀人数中,男生的中位数大于女生,女生最大值大于男生;良好人数中,男女生中位数基本一致,女生最大值大于男生;中等的人数中,男生中位数大于女生,男生最大值大于女生;及格人数中,女生普遍大于男生。
4)可知,男女生中位数基本一致,核密度曲线相差不大。
5)由图看出,不管男生还是女生,在不同程度上的成绩都基本上集中在一条线上。
注意事项使用R软件完成变量分布特征的数据可视化。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_78901.html