据说今年找工作很难,不得不说行业化内卷严重,且近几年就业形势一直都不太好,一方面高校毕业生逐年在递增,另一方面,市场的岗位需求趋近饱和,一岗难求。 基于此,本文使用智联招聘、BOSS直聘等在线招聘平台的招聘人数数据,借助pandas和pyecharts两个包,绘制漏斗图,从招聘流程上解析人数的变化情况。示例工具:anconda3。7 本文讲解内容:openpyxl、pyecharts使用 适用范围:招聘业务中的漏斗分析安装及导入库 使用pip命令下载pyecharts包,并指定下载的包的版本是1。9。0版本,如果下载速度比较慢的话,后面可以加一个i清华镜像下载包,当出现Sussessfully的字样时,就表明pyecharts包已经安装好。!pipinstallpyecharts1。9。0ihttps:pypi。tuna。tsinghua。edu。cnsimple 这里我们导入openpyxl库用于数据导入,以及pyecharts库用于数据可视化。fromIPython。core。interactiveshellimportInteractiveShellInteractiveShell。astnodeinteractivityallimportopenpyxlfrompyechartsimportoptionsasoptsfrompyecharts。chartsimportFunnel,Grid,Bar,Page数据导入 使用openpyxl库数据导入,读取指定路径的数据表,并指定读取工作表1该sheet表下的数据。读取excel数据workbookopenpyxl。loadworkbook(rC:Desktop招聘数据。xlsx)sheetworkbook〔工作表1〕 新建一个空的列表〔〕,使用sheet〔A〕〔0〕。value可以读取指定单元格内的数据,如果要读取指定单元格区域的数据,可以使用for循环进行循环读取,用append命令将读取的数据合并在列表中,导入智联招聘数据如下。value1〔〕title1sheet〔A〕〔0〕。valueforcellin(sheet〔B〕〔1::〕):定位数据位置value1。append(cell。value)title1value1 同理导入BOSS直聘数据。value2〔〕title2sheet〔F〕〔0〕。valueforcellin(sheet〔G〕〔1::〕):定位数据位置value2。append(cell。value)title2value2 导入前程无忧的数据如下。value3〔〕title3sheet〔K〕〔0〕。valueforcellin(sheet〔L〕〔1::〕):定位数据位置value3。append(cell。value)title3value3 导入指定的数据区域。value4〔〕forcellin(sheet〔Q〕〔1::〕):定位数据位置value4。append(cell。value)value4 构建数据集 想要做出漏斗图,需要构造出含字段标签的数据集,我们使用列表解析式来生成,如果要做不同公司的漏斗图,就要分别构造数据集,数据集结果如下。attr〔浏览,简历,约面,到面,offer,入职〕value1〔int(i)foriinvalue1〕data1〔〔attr〔i〕,value1〔i〕〕foriinrange(len(attr))〕data1 data2〔〔attr〔i〕,value2〔i〕〕foriinrange(len(attr))〕data2 data3〔〔attr〔i〕,value3〔i〕〕foriinrange(len(attr))〕data3 数据可视化 绘制智联招聘人数的漏斗图,使用可视化对象Funnel(),导入数据data1,其他可视化配置可以默认或者使用参数进行设置,。rendernotebook()命令可在notebook在线展示。funnel1(Funnel()。add(seriesname人数人,sortascending,datapairdata1,gap2,tooltipoptsopts。TooltipOpts(),labeloptsopts。LabelOpts(isshowTrue,positioninside),itemstyleoptsopts。ItemStyleOpts(bordercolorfff,borderwidth1),)。setglobalopts(titleoptsopts。TitleOpts(titletitle1,subtitle招聘人数转化漏斗分析)))funnel1。rendernotebook() 同理制作BOSS直聘的招聘人数漏斗图。funnel2(Funnel()。add(seriesname人数人,sortascending,datapairdata2,gap2,tooltipoptsopts。TooltipOpts(),labeloptsopts。LabelOpts(isshowTrue,positioninside),itemstyleoptsopts。ItemStyleOpts(bordercolorfff,borderwidth1),)。setglobalopts(titleoptsopts。TitleOpts(titletitle2,subtitle招聘人数转化漏斗分析)))funnel2。rendernotebook() 还有前程无忧的招聘人数漏斗图。funnel3(Funnel()。add(seriesname人数人,sortascending,datapairdata3,gap2,tooltipoptsopts。TooltipOpts(),labeloptsopts。LabelOpts(isshowTrue,positioninside),itemstyleoptsopts。ItemStyleOpts(bordercolorfff,borderwidth1),)。setglobalopts(titleoptsopts。TitleOpts(titletitle3,subtitle招聘人数转化漏斗分析)))funnel3。rendernotebook() 如果想要做一个词云图,根据关键词的大小来呈现招聘人数的多少,导入视觉对象WordCloud,并且构造数据集words,即可制作词云图。frompyechartsimportoptionsasoptsfrompyecharts。chartsimportWordCloudwords〔(attr〔i〕,value4〔i〕)foriinrange(len(attr))〕wordcloud(WordCloud()。add(人数,words,wordsizerange〔30,100〕,textstyleoptsopts。TextStyleOpts(fontfamilycursive))。setglobalopts(titleoptsopts。TitleOpts(title面试人数词云图)))wordcloud。rendernotebook() 结果导出 以上做出各个招聘公司的招聘人数漏斗图,可看出,在整个招聘过程中,从网站浏览到筛选简历的过程中,基本有一半简历会被刷下来,所以,在找工作时,尤其要写出一份精美的简历,良好的简历让人眼前一亮,避免第一关就被PASS掉,可视化做出来后使用page命令,将前面的结果呈现在一张界面中,并可以保存为网页版结果。pagePage(layoutPage。SimplePageLayout)layoutPage。DraggablePageLayout自定义布局page。add(funnel1,funnel2,funnel3,wordcloud)page。render(rC:Desktop招聘人数漏斗分析。html) 三年互联网数据分析经验,擅长Excel、SQL、Python、PowerBI数据处理工具,数据可视化、商业数据分析技能,统计学、机器学习知识,持续创作数据分析内容,点赞关注,不迷路。