⼉科医⽣在国内需求分析
前⾔
这周跟着“[Alfred数据室]”分析了⼀篇关于⼉科医⽣这个职位在国内的招聘要求、薪资⽔平、在医⽣招聘中所占⽐例等,今天把学到的和写的代码数据和⼤家做个分享,废话不多说,直接上代码来分析。
⾸先看⼀下数据的基本类型和结构,这个数据总共有27列数据,每⼀列代表不同的内容,例如:area代表地区、jobYearText代表⼯作年限,gradeText代表招聘级别。人教版三年级下册数学电子课本
all_data.info()
数据清洗
去重
祝福祖国的诗句
但是这些数据太多了,有许多是不需要的,这⾥我们做⼀下清洗,把不需要的数据删除掉。
#把⽆⽤的字段删去,inplace代表在当前df中执⾏此操作写给母亲
#根据id去重, drop_duplicates是去除完全重复的数据⾏
all_data.drop(columns=['_id', 'entLogo', 'region'], inplace=True)
all_data.drop_duplicates(subt='id', inplace=True)
all_data.sample(2)
创建、更新时间数据类型转换
我们需要增加2列数据内容,即把'createTime'和'updateTime'的数据类型转换。四年级上册必背古诗
all_data['createTime'] = pd.to_datetime(all_data['createTime'])
all_data['updateTime'] = pd.to_datetime(all_data['updateTime'])
省份、市区清理
由于⼉科的数据是按照市为单位爬取的,⽽其它科是按省爬取的,所以area没有参考意义,如图所⽰,需要清理出省。
all_data['locationText'].unique()
all_data.loc[all_data['depType'] != '⼉科', 'province'] = all_data.loc[all_data['depType'] != '⼉科', 'area']
all_data.loc[(all_data['locationText'].ains('北京|上海|天津|重庆|⾃治区|省'))&
(all_data['depType'] == '⼉科'), 'province']= all_data.loc[(all_data['locationText'].ains('北京|上海|天津|重庆|⾃治区|省'))& (all_data['depType'] == '⼉科'), 'locationText'].str.split('省|⾃治区|市', expand=True)[0]
all_data['city'] = all_data['locationText'].act(r'(.{2}市)')
all_data['city']
处理⼯资字段
⼯资列的数据看着很乱,这⾥做下处理,统⼀⼀下⼯资字段从⽽⽅便后⾯的数据处理。这⾥使⽤⼀个⾃定义函数进⾏处理。all_data['salaryText'].unique()
def process_k(data):镌刻的读音
if '千' in data :
奶汤return place('千','')) *1000
elif '万' in data :
return place('万','')) * 10000
def process_salary(data):qq导航
if data == '⾯议':
return np.nan
if '万以上' in data :
return place('万以上','')) * 10000
if '千以下' in data :
return place('千以下','')) * 1000
if '-' in data :
low, high = data.split('-')留学英文
return (process_k(low) + process_k(high)) / 2
all_data['salary'] = all_data['salaryText'].apply(process_salary)
all_data = all_data[-(all_data['salary']>100000)]
all_data.iloc[2600]
数据分析
⼉科医⽣的需求
上⾯过程中我们把数据清洗完了,这⾥我们来对数据做进⼀步的分析,⾸先我们看⼀下,国内对⼉科医⽣的需求量,⼉科医⽣⽬标在招聘岗位有2359,期中公⽴医院对⼉科医⽣需求量最⼤,其次是民营医院,还有部分医药、⽣物企业也在招聘⼉科医⽣。
all_data[all_data['depType'] == '⼉科'].shape
type_pct = all_data.loc[all_data['depType'] == '⼉科','typeText'].value_counts() / all_data[all_data['depType'] == '⼉科'].shape[0] *100
type_pct
from pyecharts import Bar
bar = Bar("各类型单位招聘⼉科岗位数百分⽐", width = 700,height=500)
bar.add("", type_pct.index, np.round(type_pct.values, 1), is_stack=True,
xaxis_label_textsize=20, yaxis_label_textsize=14, is_label_show=True,
xaxis_rotate=20)
bar
⼉科医⽣招聘经验要求
⼤家知道,⼀般做医⽣的都需要经验,⼉科医⽣也不例外,可以看出“经验不限”的所占⽐例最⾼,其次是⼯作5-10的。 但是公⽴医院对⼉科医⽣的招聘年限要求⽐私⽴医院要宽松,公⽴和民营医院不太喜欢招聘应届⼉科医⽣,这个也不难理解。