一、實驗目的:
? ? ? ?通過上機試驗,掌握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)繪制折線圖,展示工資如何隨工作時間變化,并對圖形進行解讀:
data<-read.csv("E:/學習資料及作業/2.2多元統計分析R/實驗1/bank.csv")datad1<-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)繪制氣泡圖,展示性別、職位等級與當前工資的關系,并對圖形進行解讀。
d2<-aggregate(x=data$salary,by=list(data$jobcat,data$gender),FUN=mean)d2ggplot(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)自行選擇感興趣的變量與分析目的,利用基本統計分析圖形進行直觀表示并加以解讀。此小題對使用何種圖形展示不做嚴格要求,只需不是折線圖及氣泡圖即可。
①分別用箱型圖繪制職位等級與受教育年限、職位等級與薪資的關系:
代碼:
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的薪資較為集中,幾乎沒什么波動。
②受教育年限、以前工作經歷與初始工資的關系:
代碼:
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')
解讀分析:
受教育越高的平均工作時間要比受教育低的少,并且獲得的薪酬也相對多一些。
③以前的工作經歷對初始薪資的影響:
代碼:
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個月以上時,再次換工作的人也偏少了,這可能與他們進入中年,追求平穩的生活可能有關。