700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Python大数据分析与应用—中国高校毕业生薪酬指数排名

Python大数据分析与应用—中国高校毕业生薪酬指数排名

时间:2021-06-18 01:10:28

相关推荐

Python大数据分析与应用—中国高校毕业生薪酬指数排名

一.数据来源

数据说明:数据来源于薪酬网,网址为/ChineseCollege/Indexes

(注:薪酬指数:在做薪酬之前要做岗位评估,一般从10个维度去衡量岗位综合分数,一般以一千分为基准。毕业生薪酬指数既反映了毕业生成长发展状况,也反映了高校毕业生就业状况、收入变化,对客观分析高校毕业生就业趋势、企业人力资源配置状况具有重要的参考意义)

中国高校毕业生薪酬指数排名(前100)。数据存入csv文件中,每行数据为高校,行末为换行符作为结束;行内数据为该高校毕业生薪酬有关的信息,行内数据用逗号分隔。共103行、10列数据,具体内容如下:

数据处理

1.读入数据

import pandas as pddf=pd.read_csv('C:/Users/86182/中国高校毕业生薪酬指数排名.csv',encoding='GBK') #读取csv文件

2.数据规格化、清洗

删除两个空行

df=df.drop([8,28])

将“是否985院校”,“是否211院校”的两列中的“是”用数值1代替,“否”用数值0代替,“未知”用数值-1代替,并将列表信息存储为newdata.txt

df['是否985院校']=df['是否985院校'].replace('是',1)df['是否985院校']=df['是否985院校'].replace('否',0)df['是否985院校']=df['是否985院校'].replace('未知',-1)df['是否211院校']=df['是否211院校'].replace('是',1)df['是否211院校']=df['是否211院校'].replace('否',0)df['是否211院校']=df['是否211院校'].replace('未知',-1)df.to_csv('newdata.txt',sep=',',index=False)

(3)data1=df.describe()

将“毕业生平均薪酬届(工作一年)”“毕业生平均薪酬届(工作三年)”“毕业生平均薪酬届(工作五年)”这三列的列名分别改为“salary”“salary”“salary”

df=df.rename(columns={'毕业生平均薪酬届(工作一年)':'salary','毕业生平均薪酬届(工作三年)':'salary','毕业生平均薪酬届(工作五年)':'salary'})

3.统计分析数据

将薪酬指数排名前十的大学信息显示出

df3=df.head(10)

按照届(工作三年)的平均薪酬重新排序(降序),并保存到变量df4里,保存为csv文件(df4.csv)

df4=df.sort_values(by='salary',ascending=False)df4.to_csv('df4.csv')

计算各大学毕业生的三届学生的平均薪资,并将平均薪酬添加到df中,列名为‘average’

df5=df.iloc[0:101,[7,8,9]]df6=df5.mean(axis=1).round(2).valuesdf['average']=df6

筛选出来三届毕业生的平均工资大于10000的学校

df1=df.loc[df['salary']>10000]

筛选出来届毕业生(工作五年)平均工资大于12000的学校

df2=df.loc[df['salary']>12000]

按照省份对所有列进行分类汇总

df3=df.groupby('所在地').count()

df7=df.groupby('类型').count()

计算薪酬指数与三届毕业生平均薪资的相关性

salary1=df['薪酬指数']average=df['average']salary1.corr(average)

按照是否为985院校和是否为211院校对学校进行分类

df8=df.groupby(['是否985院校','是否211院校'])['学校名称'].count()

注:数值0代表‘否’,数值1代表‘是’,数值-1代表‘未知’

按照学校类型对平均薪资进行汇总

df10=df.groupby('所在地')['average'].count()

三、图表显示

1.根据学校类型的数量画出一个直方图

import matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus']=Falsetypes=[]for tp in df[u'类型']:ls=tp.split(',')for x in ls:types.append(x)tp_df=pd.DataFrame({u'类型':types})fig,ax=plt.subplots(figsize=(9,6),dpi=60)tp_df[u'类型'].value_counts().plot(kind='bar',ax=ax)ax.set_xlabel(u'高校')ax.set_ylabel(u'数量')ax.set_title(u'各类型高校数量')

根据省市的学校数量画出一个直方图

types=[]for tp in df[u'所在地']:ls=tp.split(',')for x in ls:types.append(x)tp_df=pd.DataFrame({u'所在地':types})fig,ax=plt.subplots(figsize=(9,6),dpi=100)tp_df[u'所在地'].value_counts().plot(kind='bar',ax=ax)ax.set_xlabel(u'所在地')ax.set_ylabel(u'数量')ax.set_title(u'平均薪酬top100各省市高校数量')

画出各省市届毕业生和届毕业生的平均薪酬的折线图

import matplotlib.pyplot as pltplt.rcParams['font.sans-serif']='SimHei'#设置中文显示fig,ax=plt.subplots(figsize=(10,7),dpi=100)x=df[u'所在地'].value_counts().sort_index().indexy2=df.sort_values(by=u'所在地').groupby(u'所在地').mean()[u'salary'].valuesy1=df.sort_values(by=u'所在地').groupby(u'所在地').mean()[u'salary'].valuesplt.plot(x,y2,'go--')plt.plot(x,y1,'bo--')plt.title("各省市高校毕业生平均薪酬")plt.xlabel('省市')plt.ylabel('平均薪酬')plt.legend('best')plt.annotate("change5", xy=('天津',7250),xytext=('天津',8500),arrowprops=dict(facecolor='black',headwidth=4,width=1.5,headlength=4),horizontalalignment='right',verticalalignment='top')plt.annotate("change13", xy=('江西',7750),xytext=('江西',8900),arrowprops=dict(facecolor='black',headwidth=4,width=1.5,headlength=4),horizontalalignment='right',verticalalignment='top')

结论

薪资最高的是上海,北京,广东这些一线城市,看来就业城市很重要,想拿高工资还是得去一线。各高校薪酬指数排名前一百的高校中,理工,综合,财经这三类学校的平均薪资都较高。届各高校毕业生和届各高校毕业生在各省市的平均薪资基本变化不大。工资最高的是清北,届毕业也就是工作一年的大学生,平均薪资9000左右,工作三年后工资达到一万一,工作五年后则能达到一万三左右。排前五十的大部分是985和211高校,但也有少部分是双非,但是这些双非学校基本都在北上广。许多人说学外语没前途,其实不然,北京外国语,对外经贸,外交学院这些大学薪资很高。清华毕业一年薪资最高,但五年后就不如北大,复旦甚至外交学院。不管是工作一年、三年还是五年,985学校的薪资都高于211学校,所以尽量上好学校。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。