多元数据直观表示(R语言)

一、实验目的:

通过上机试验,掌握R语言实施数据预处理及简单统计分析中的一些基本运算技巧与分析方法,进一步加深对R语言简单统计分析与图形展示的理解。

数据:
链接: https://pan.baidu.com/s/1kMdUWXuGCfZC06lklO5iXA 提取码: g55h

二、实验内容:

bank.csv文件中数据来自1969-1971年美国一家银行的474名职员情况调查。该数据共8个变量,包括:

gender:性别,1代表男性,2代表女性;

educ:受教育年限(单位:年);

jobcat:职位等级,分1,2,3级,1级工作地位最低,3级最高;

salary:当前工资(单位:美元/年);

salbegin:初始工资,指进入银行初始薪酬(单位:美元/年);

jobtime:工作月份,指在银行累计工作时间(单位:月);

prevexp:以前工作经历,指在其他单位累计工作时间(单位:月);

minority: 是否少数民族,0代表不是,1代表是。

(1)请绘制折线图,展示工资如何随工作时间变化,并对图形进行解读。

(2)请绘制气泡图,展示性别、职位等级与当前工资的关系,并对图形进行解读。

(3)(至少有两个分析)自行选择感兴趣的变量与分析目的,利用基本统计分析图形进行直观表示并加以解读。此小题对使用何种图形展示不做严格要求,只需不是折线图及气泡图即可。

三、实验过程与结果:

(1)绘制折线图,展示工资如何随工作时间变化,并对图形进行解读:

R 复制代码
data<-read.csv("E:/学习资料及作业/2.2多元统计分析R/实验1/bank.csv")

data

d1<-aggregate(salary~jobtime,data,mean)  #求salary的均值

library(ggplot2)

ggplot(data=d1,aes(x=jobtime,y=salary))+ # 折线图

  geom_line(color="green",size=1) #线的颜色、粗细

运行结果:

解读分析:

从总体上看,工作时间jobtime与工资salary之间不存在线性关系,即使工作时间在小范围内变化,薪资可能波动较大。当工作时间超过90时,总体的薪资会比工作时间小于90的多一点儿,表明工作时间会对薪资有一定的影响,但薪资并不是只由工作时间直接决定的,还存在其他因素对其有影响。

(2)绘制气泡图,展示性别、职位等级与当前工资的关系,并对图形进行解读。

R 复制代码
d2<-aggregate(x=data$salary,by=list(data$jobcat,data$gender),FUN=mean)

d2

ggplot(data=d2,aes(x=Group.1, y=Group.2, size=x,col=1)) +

  geom_point(alpha=0.5) + #调整圆圈透明度

  scale_size(range = c(1, 10), name="性别、职位等级与当前工资的关系图")+ #图例名称

  xlab('jobcat') +  # 更改x、y轴名称

  ylab('gender')

运行结果:

解读分析:

男性1到3等级都有分布,女性只有1、3等级,从男性角度来看,1、2等级的薪资差别不大,但1、2与3等级薪资相差较大,都快相差两倍了;从女性角度来看,等级1与等级3相差巨大。并且男性和女性都为等级1时,男性的薪资与女性的相差较大。

(3)自行选择感兴趣的变量与分析目的,利用基本统计分析图形进行直观表示并加以解读。此小题对使用何种图形展示不做严格要求,只需不是折线图及气泡图即可。

① 分别用箱型图绘制职位等级与受教育年限、职位等级与薪资的关系:

代码:

R 复制代码
data$jobcat<-factor(data$jobcat)

ggplot(data,aes(x=jobcat,y=educ))+

  geom_boxplot()+

  labs(title="职位等级与受教育年限的关系",x="职位等级",y="受教育年限")+

  theme(plot.title = element_text(hjust=0.5))

data$jobcat<-factor(data$jobcat)

ggplot(data,aes(x=jobcat,y=salary))+

  geom_boxplot()+

  labs(title="职位等级与薪资的关系",x="职位等级",y="薪资")+

  theme(plot.title = element_text(hjust=0.5))

运行结果:

解读分析:

从均值来看,等级1、2的受教育的年限均值相同,等级3最高,但等级1、2的薪资均值相差不大,等级3的薪资却比等级1、2高得多,从某种程度上可以表明受教育年限越高,其薪资也越高。等级2的薪资较为集中,几乎没什么波动。

② 受教育年限、以前工作经历与初始工资的关系:

代码:

R 复制代码
d3<-aggregate(x=data$salbegin,by=list(data$prevexp,data$educ),FUN=mean)

ggplot(data=d3,aes(x=Group.1, y=Group.2, size=x,col=1)) +

  geom_point(alpha=0.5) + #调整圆圈透明度

  scale_size(range = c(1, 10), name="受教育年限、以前工作经历

             与初始工资的关系图")+ #图例名称

  xlab('prevexp') +  # 更改x、y轴名称

  ylab('educ')

解读分析:

受教育越高的平均工作时间要比受教育低的少,并且获得的薪酬也相对多一些。

③ 以前的工作经历对初始薪资的影响:

代码:

R 复制代码
d4<-aggregate(salbegin~prevexp,data,mean)

order<-sort(d4$prevexp,decreasing=T)

ggplot(data=d4,aes(prevexp,salbegin))+

  geom_bar(stat="identity",width=0.8,colour="black",linewidth=0.25,fill="#FC4E07",alpha=1)

运行结果:

解读分析:

以前的工作经历大多集中在0-120个月,即1-10年,随着工作经历的增加,会出现少数再找工作时,其初始工资很高,但是总体工作经历对其再工作时的初始工资没有什么影响。并且当工作经历达到200个月以上时,再次换工作的人也偏少了,这可能与他们进入中年,追求平稳的生活可能有关。

相关推荐
Aloudata技术团队8 小时前
Metric Layer 建设指南:如何先从核心指标层启动企业语义工程
数据分析
2601_966949659 小时前
多市场量化策略的数据接口应该如何设计:从数据层架构到策略接入
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
专注API从业者12 小时前
告别复杂页面解析,OpenClaw 快速搭建电商商品监控与数据分析脚本
大数据·数据库·python·数据挖掘·数据分析
SelectDB13 小时前
Apache Doris x Fluss:面向湖流一体的统一查询与分析
大数据·数据库·数据分析
一只专注api接口开发的技术猿15 小时前
Open‑Claw 实战|告别页面逆向,快速搭建电商商品监控与数据分析完整方案
大数据·数据库·python·数据挖掘·数据分析
真上帝的左手16 小时前
27. 数据产品-数据中台架构规划
数据仓库·架构·数据分析·数据中台
派小心.18 小时前
多端数据分析平台的漏斗可以跨端搭建吗?5 步搭出跨端转化漏斗
大数据·运维·服务器·前端·数据分析
cc5725026531 天前
2027 届秋招面试:数据科学专业从技术转业务,职业规划回答思路与岗位拆解
数据分析
benchmark_cc2 天前
本地已有一年历史 K 线,第二天更新别只拉“昨天一天”
python·数据分析·pandas·量化交易·股票数据·quantdash
智圣新创012 天前
锚定省级示范高职育人评价核验要求 第二课堂数字化落地全场景高频答疑
信息可视化·数据挖掘·数据分析