毕设分享 基于大数据人才岗位数据分析

发布时间:2026/9/23 1:38:49

毕设分享 基于大数据人才岗位数据分析 文章目录1 前言1. 数据集说明2. 数据处理2.1 数据清洗2.2 数据导入3. 数据分析可视化3.1 整体情况招聘企业数、岗位数、招聘人数、平均工资3.2 企业主题行业情况公司类型最缺人的公司 TOP平均薪资最高的公司 TOP工作时间工作地点福利词云3.3 岗位主题工作经验要求学历要求性别要求年龄要求语言要求编程语言要求4. 模型预测1 前言这里是毕设分享系列学长分享优质毕业设计项目今天要分享的是基于大数据人才岗位数据分析项目运行效果毕业设计 基于大数据人才岗位数据分析项目分享见主页任意置顶文章1. 数据集说明这是一份来自厦门人才网的企业招聘数据采集日期为 2021-01-14总计 100,077 条记录大小为 122 M包含 19 个字段。2. 数据处理2.1 数据清洗使用 pandas 对数据进行清洗主要包括去重、缺失值填充、格式化、计算冗余字段。# 数据重复处理: 删除重复值# print(data[data.duplicated()])data.drop_duplicates(inplaceTrue)data.reset_index(dropTrue,inplaceTrue)# 缺失值查看、处理data.isnull().sum()# 招聘人数处理缺失值填 1 一般是一人; 若干人当成 3人data[num].unique()data[num].fillna(1,inplaceTrue)data[num].replace(若干,3,inplaceTrue)# 年龄要求缺失值填 无限格式化data[age].unique()data[age].fillna(不限,inplaceTrue)data[age]data[age].apply(lambdax:x.replace(岁至,-).replace(岁,))# 语言要求: 忽视精通程度格式化data[lang].unique()data[lang].fillna(不限,inplaceTrue)data[lang]data[lang].apply(lambdax:x.split(水平)[0])data[lang].replace(其他,不限,inplaceTrue)# 月薪: 格式化。根据一般经验取低值比如 5000-6000, 取 5000data[salary].unique()data[salary]data[salary].apply(lambdax:x.replace(参考月薪 ,)if参考月薪 instr(x)elsex)data[salary]data[salary].apply(lambdax:x.split(-,1)[0]if-instr(x)elsex)data[salary].fillna(0,inplaceTrue)# 其它岗位说明缺失值填无data.fillna(其他,inplaceTrue)# 工作年限格式化defjobage_clean(x):ifxin[应届生,不限]:returnxelifre.findall(\d年,x):returnre.findall((\d)年,x)[0]elif年inx:xre.findall(\S{1,2}年,x)[0]xre.sub(厂|验|年|,,x)digit_map{一:1,二:2,三:3,四:4,五:5,六:6,七:7,八:8,九:9,十:10,十一:11,十二:12,十三:13,十四:14,十五:15,十六:16,两:2}returndigit_map.get(x,x)return其它工作经验data[jobage].unique()data[jobage]data[jobage].apply(jobage_clean)# 性别格式化data[sex].unique()data[sex].replace(无,不限,inplaceTrue)# 工作类型格式化data[job_type].unique()data[job_type].replace(毕业生见习,实习,inplaceTrue)# 学历格式化data[education].unique()data[education]data[education].apply(lambdax:x[:2])# 公司类型 格式化defcompany_type_clean(x):iflen(x)100or其他inx:return其他elifre.findall(私营|民营,x):return民营/私营elifre.findall(外资|外企代表处,x):return外资elifre.findall(合资,x):return合资returnx data[company_type].unique()data[company_type]data[company_type].apply(company_type_clean)# 行业 格式化。多个行业取第一个并简单归类defindustry_clean(x):iflen(x)100or其他inx:return其他industry_map{IT互联网:互联网|计算机|网络游戏,房地产:房地产,电子技术:电子技术,建筑:建筑|装潢,教育培训:教育|培训,批发零售:批发|零售,金融:金融|银行|保险,住宿餐饮:餐饮|酒店|食品,农林牧渔:农|林|牧|渔,影视文娱:影视|媒体|艺术|广告|公关|办公|娱乐,医疗保健:医疗|美容|制药,物流运输:物流|运输,电信通信:电信|通信,生活服务:人力|中介}forindustry,keywordinindustry_map.items():ifre.findall(keyword,x):returnindustryreturnx.split(、)[0].replace(/,)data[industry].unique()data[industry]data[industry].apply(industry_clean)# 工作时间格式化data[worktime].unique()data[worktime_day]data[worktime].apply(lambdax:x.split(小时)[0]if小时inxelse0)data[worktime_week]data[worktime].apply(lambdax:re.findall(\S*周,x)[0]if周inxelse0)# 从工作要求中正则解析出技能要求data[skill]data[require].apply(lambdax:、.join(re.findall([a-zA-Z],x)))2.2 数据导入将清洗后的数据导入到 hiveCREATETABLEjob(positionstringCOMMENT职位,numstringCOMMENT招聘人数,companystringCOMMENT公司,job_typestringCOMMENT职位类型,jobagestringCOMMENT工作年限,langstringCOMMENT语言,agestringCOMMENT年龄,sexstringCOMMENT性别,educationstringCOMMENT学历,workplacestringCOMMENT工作地点,worktimestringCOMMENT工作时间,salarystringCOMMENT薪资,welfarestringCOMMENT福利待遇,hrstringCOMMENT招聘人,phonestringCOMMENT联系电话,addressstringCOMMENT联系地址,company_typestringCOMMENT公司类型,industrystringCOMMENT行业,requirestringCOMMENT岗位要求,worktime_daystringCOMMENT工作时间(每天),worktime_weekstringCOMMENT工作时间(每周),skillstringCOMMENT技能要求)rowformat delimitedfieldsterminatedby,linesterminatedby\n;-- 加载数据LOADDATAINPATH/tmp/job.csvOVERWRITEINTOTABLEjob;通过 hue 查看一下数据[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MvFQy0xU-1660662177250)(https://gitee.com/TurboWay/blogimg/raw/master/img/image-20210121195311442.png)]然后随便点击一条数据可以看到经过前面的清洗现在的字段已经很好看了后续的分析也会变得简单许多。3. 数据分析可视化3.1 整体情况招聘企业数、岗位数、招聘人数、平均工资招聘企业数为 10093在招的岗位数有 10 万个总的招聘人数为 26 万人平均工资为 5576 元。3.2 企业主题行业情况各行业的招聘人数排行 TOP10 如下可以看到 IT 互联网最缺人。由于数据源的行业分类比较草率很多公司的分类其实并不是很准确所以这个结果仅供参考。公司类型从招聘人数上来看民营/私营的企业最缺人事业单位的招聘人数最少。从薪资待遇来看上市公司平均薪资最高 5983 元而台资/港资则最少 4723 元。最缺人的公司 TOP最缺人的公司果然是人力资源公司总的要招聘 2000 多个人从详情来看大多是代招一些流水线岗位。平均薪资最高的公司 TOP平均薪资最高的公司上海美莱投资管理有限公司居然有 5 万多一惊之下查了下这家公司的招聘信息可以看到该公司在招的都是高级岗比如 集团片区总经理副总裁级这个岗位人数达到 20 人岗位月薪 6 万所以直接把平均薪资拉高了而且工作地点也不在厦门。由以上分析可以得知根据招聘信息来推算平均工资其实误差还是比较大的仅供参考。工作时间从每天工作时间占比 TOP 10 来看大部分职位是 8 小时工作制紧接着是 7.5 小时 和 7小时。还有一些每天上班时间要达到 12 小时主要是 保安 和 普工 这类岗位。每周工作天数占比来看大部分还是 5天/周的双休制不过 6 天/周、5.5 天/周、大小周的占比也是相当高。工作地点岗位数量的分布图颜色越深代表数量越大可以看到思明区的工作机会最多其次是湖里、集美、同安、海沧、翔安。福利词云3.3 岗位主题工作经验要求从岗位数量来看一半以上的岗位对工作经验是没有要求的。在有经验要求的岗位里面1-3 年工作经验的市场需求是最大的。从平均工资来看符合一般认知。工作经验越多工资也越高10 年以上的工作经验最高平均工资为 13666 元应届生最低平均工资为 4587 元。学历要求从岗位数来看大部分岗位的学历要求为大专以上换言之在厦门只要大专学历就很好找工作了。从平均工资来看学历越高工资越高这也符合一般认知谁说的读书无用论来着。有趣的是不限学历的平均工资居然排在了高中的前面或许这是 九年义务教育的普及与大学扩招带来的内卷在招聘方眼里只有两大类上过大学和没上过大学从而导致大专以下的学历优势不再明显。性别要求岗位数方面有 6974 个岗位明确要求性别为 女仅有 575 个岗位要求性别为 男。平均工资方面女性岗位的平均工资为 5246 元而男性则为 4454 元。虽然绝大多数岗位都是不限制性别的但是不管是从岗位数量还是平均工资来看在厦门女性比男性似乎有更多的职场优势。年龄要求年龄要求一般有一个上限和下限现在只考虑上限并通过上限来分析一下所谓 35 岁的危机。岗位数量上来看大多数岗位是不限制年龄的有限制年龄的岗位里面35 岁以后的岗位有 7327 个35 岁及以下的岗位有 32967 个岗位数量上确实少了非常多。从平均工资来看35 岁以后的岗位 5095 元35岁及以下的岗位 5489 元薪资上少了 394 元。所以单单考虑岗位的年龄上限那么 35 岁以后的市场需求确实会变少。但是为什么会是这样的情况呢个人认为有可能是 35 岁 以后的职场人士沉淀更多进入了更高级的职位更稳定所以流动性比较低自然市场上空出来的需求也会变少了更不用说还有一部分人变成了创业者。语言要求大部分岗位没有语言要求在有语言要求的岗位里面英语妥妥的是第一位。值得一提的是这边还有个闽南语因为厦门地处闽南本地的方言就是闽南语。编程语言要求比较流行的编程语言里面被岗位要求提到的次数排行如下 。可以看到C 语言被提及的次数远大于其它语言不亏是排行榜常年第一的语言。比较惊讶的是如今大火的 python 被提及的次数却很少排在倒二。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0f2WXrN9-1660662177260)(https://gitee.com/TurboWay/blogimg/raw/master/img/image-20210122172459174.png)]这些语言的平均薪资排行Python 最高为 8732 元。4. 模型预测我们知道影响工资待遇的因素有很多学历、工作经验、年龄、招聘方的紧急程度、技能的稀缺性、行业的发展情况。。。等等。所以为了简化模型就学历和工作经验两个维度进行模型训练尝试做工资预测。importpandasaspdfromsklearn.linear_modelimportLinearRegressiondefpredict(data,education): :param data: 训练数据 :param education: 学历 :return: 模型得分10年工作预测 traindata[data[education]education].to_numpy()xtrain[:,1:2]ytrain[:,2]# model 训练modelLinearRegression()model.fit(x,y)# model 预测X[[i]foriinrange(11)]returnmodel.score(x,y),model.predict(X)education_list[小学,初中,中专,高中,大专,本科,硕士,博士]datapd.read_csv(train.csv)scores,values[],[]foreducationineducation_list:score,ypredict(data,education)scores.append(score)values.append(y)resultpd.DataFrame()result[学历]education_list result[模型得分]scores result[(1年经验)平均工资][value[1]forvalueinvalues]result[(3年经验)平均工资][value[2]forvalueinvalues]result[(5年经验)平均工资][value[4]forvalueinvalues]result[(10年经验)平均工资][value[10]forvalueinvalues]print(result)使用线性回归模型分学历进行预测预测结果如下。项目运行效果毕业设计 基于大数据人才岗位数据分析项目分享见主页任意置顶文章
延伸阅读

更多相关文章

2026/9/22 5:28:18

OpenNews MCP实时订阅功能详解:不错过任何市场动态

OpenNews MCP实时订阅功能详解:不错过任何市场动态 【免费下载链接】opennews-mcp News Aggregation AI Ratings Trading Signals Real-time Updates 项目地址: https://gitcode.com/gh_mirrors/op/opennews-mcp OpenNews MCP是一款强大的新闻聚合平台&am…

2026/9/22 16:55:06

Punctuator2训练全攻略:从数据准备到模型优化的完整步骤

Punctuator2训练全攻略:从数据准备到模型优化的完整步骤 【免费下载链接】punctuator2 A bidirectional recurrent neural network model with attention mechanism for restoring missing punctuation in unsegmented text 项目地址: https://gitcode.com/gh_mir…

2026/9/23 1:37:23

OpenSider实战:把浏览器变成AI Agent的“手和脚”全解析

做Agent这一年多,我踩得最深的坑不是模型选型,也不是Prompt调优,而是“手和脚”的问题。模型再聪明,最后总得有人去点按钮、填表单、翻页面,不然它就只能当一个只聊不做的顾问。OpenSider就是为解决这个问题来的&#…

2026/9/23 1:37:23

Flet flet-video 的 VideoSpacer 控件栏弹性间隔布局指南

前端跨平台桌面应用移动开发 【免费下载链接】flet Build realtime web, mobile and desktop apps in Python only. No frontend experience required. 项目地址: https://gitcode.com/gh_mirrors/fl/flet 点击查看 免费下载 导读 VideoSpacer 是 Flet 官方视频扩…

2026/9/23 1:37:23

搞懂了解的英语报错?这份速查手册让 StackTrace 不再劝退

搞懂了解的英语报错?这份速查手册让 StackTrace 不再劝退 面对满屏红色的 StackTrace,你是不是脑子瞬间一片空白?那些英文单词像天书一样,连错在哪一行都找不到。别慌,我整理了这份【了解的英语】速查手册,专门解决你看不懂报错…

2026/9/23 1:37:23

智能飞行棋开发避坑:保姆级教程帮你搞定那些诡异报错

智能飞行棋开发避坑:保姆级教程帮你搞定那些诡异报错 刚把智能飞行棋的Demo跑起来,是不是满屏的红色StackTrace?别慌,这种“看起来像乱码”的错误堆栈,90%都是新手在异步逻辑、状态同步或并发控制上踩的坑。很多教程只教你怎么画棋盘、…

2026/9/23 1:32:23

电力巡检防震锤检测:VOC/YOLO数据集解析与YOLOv8训练实战

简介:面向电力巡检、目标检测方向的开发者和学习者,这份数据集围绕输电线防震锤识别任务,共涵盖2721张现场图片以及对应的VOC格式和YOLO格式标注文件,标注类别为DamperSpiral与DamperStockbridge两类防震锤,合计标注框…

2026/9/22 10:02:42

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/22 9:07:39

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/23 0:01:54

3个实战技巧搞定形式英语:从看教程到跑通性能优化

3个实战技巧搞定形式英语:从看教程到跑通性能优化 看了一堆教程还是不会写项目?别慌,这种“眼高手低”的困境在开发者圈子里太常见了。很多人以为卡点在语法,其实真正拦路虎是缺乏将知识点串联成完整链路的能力。今天咱们不聊虚的,直接拿【形式英语】这…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码