第8章 實(shí)戰(zhàn)-就業(yè)分析_第1頁
第8章 實(shí)戰(zhàn)-就業(yè)分析_第2頁
第8章 實(shí)戰(zhàn)-就業(yè)分析_第3頁
第8章 實(shí)戰(zhàn)-就業(yè)分析_第4頁
第8章 實(shí)戰(zhàn)-就業(yè)分析_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第8章實(shí)戰(zhàn)——就業(yè)分析研究背景分析目標(biāo)數(shù)據(jù)獲取數(shù)據(jù)處理數(shù)據(jù)分析

熟悉數(shù)據(jù)分析的基本流程

掌握數(shù)據(jù)處理的基本方法

掌握常用的圖表分析8.1研究背景8.1研究背景充分就業(yè)是宏觀經(jīng)濟(jì)政策追求的四大目標(biāo)之一,本章項(xiàng)目依據(jù)教育機(jī)構(gòu)公布的就業(yè)數(shù)據(jù),從學(xué)生的的畢業(yè)專業(yè)、就業(yè)城市、就業(yè)薪資等維度可視化展示分析結(jié)果,為高校畢業(yè)生的高質(zhì)量就業(yè)提供參與依據(jù)。8.2分析目標(biāo)8.2分析目標(biāo)為了讓管理者更清楚2022年的學(xué)生就業(yè)數(shù)據(jù),數(shù)據(jù)分析師將通過對(duì)就業(yè)數(shù)據(jù)的就業(yè)城市分布、就業(yè)曲線、狀態(tài)分析、就業(yè)薪資與學(xué)歷關(guān)系做出基本的數(shù)據(jù)分析。1.就業(yè)城市分布就業(yè)城市分布是對(duì)學(xué)生的就業(yè)城市分布的相關(guān)統(tǒng)計(jì)。從城市分布可以看出不同城市的人才需求。2.就業(yè)曲線就業(yè)曲線為該月中每天的就業(yè)人數(shù)繪制出的就業(yè)走勢(shì)圖。通過該圖的就業(yè)走勢(shì)可以推斷看出對(duì)應(yīng)的就業(yè)規(guī)律。3.狀態(tài)分析就業(yè)學(xué)生狀態(tài)分析指的是學(xué)生在學(xué)校學(xué)習(xí)時(shí)的就業(yè)狀態(tài)。通過就業(yè)狀態(tài)的分析,管理者可以看出不同狀態(tài)學(xué)生的就業(yè)形勢(shì)。4.就業(yè)薪資與學(xué)歷關(guān)系就業(yè)薪資與學(xué)歷關(guān)系能夠反映一個(gè)不同學(xué)歷的學(xué)生之間的就業(yè)差距。管理者可以參考該數(shù)據(jù)對(duì)生源適當(dāng)調(diào)整。8.3數(shù)據(jù)獲取8.3數(shù)據(jù)獲取本章項(xiàng)目的數(shù)據(jù)來源于某網(wǎng)站的就業(yè)信息,通過爬蟲技術(shù)獲取某網(wǎng)站的就業(yè)數(shù)據(jù),網(wǎng)站信息如下圖所示。8.3數(shù)據(jù)獲取在頂端的“地區(qū)”選擇“北京”,跳轉(zhuǎn)到北京校區(qū)界面,選擇“就業(yè)服務(wù)”一欄中的“就業(yè)大數(shù)據(jù)”選項(xiàng)跳轉(zhuǎn)到就業(yè)信息界面,如下圖所示。8.3數(shù)據(jù)獲取按學(xué)科劃分的就業(yè)信息欄如下圖所示。8.3數(shù)據(jù)獲取本書數(shù)據(jù)來源于的按月劃分的信息欄,如下圖所示。8.3數(shù)據(jù)獲取為了便于操作,本案例已經(jīng)將2022年中HTML5就業(yè)學(xué)生信息獲取并保存到一個(gè)JSON文件中,因此可以直接讀取數(shù)據(jù)集。使用Postman軟件查看該類型部分?jǐn)?shù)據(jù)形式如下圖所示。8.4數(shù)據(jù)處理8.4數(shù)據(jù)處理1.數(shù)據(jù)類型的轉(zhuǎn)換數(shù)據(jù)下載完成后,需要將數(shù)據(jù)轉(zhuǎn)換成分析所需的數(shù)據(jù)形式,以進(jìn)行數(shù)據(jù)預(yù)處理操作。對(duì)于就業(yè)信息的數(shù)據(jù)轉(zhuǎn)換主要是將數(shù)據(jù)從源數(shù)據(jù)中抽取出來進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換。首先,使用Pandas讀取之前爬取的數(shù)據(jù)。importpandasaspddata=pd.read_json("./studentJobData_year2022.json")注意:使用Pandas讀取數(shù)據(jù)后,data參數(shù)的數(shù)據(jù)類型為Series型。然后,將需要student主體信息提取出來。student=data["student"]由于源數(shù)據(jù)為list類型,需要數(shù)據(jù)取出并通過列表推導(dǎo)式將數(shù)據(jù)重新整合為DataFrame數(shù)據(jù)類型。data=pd.DataFrame([iforiinstudent])print(data)classstudenteducation...citycompanydate0BK-HTML5-JY-2112喬*浩???..北京北京**公司2022-01-211BK-HTML5-JY-2118寧*翔專科...北京北京**公司2022-02-172BK-HTML5-JY-2118李*???..北京北京**公司2022-02-253BK-HTML5-JY-2118苗*濤???..北京北京**公司2022-03-074BK-HTML5-JY-2118鄭*妮???..北京北京**公司2022-02-22........................11852QD-HTML5-JY-2203張*琦本科...青島市青島**科技2022-11-288.4數(shù)據(jù)處理2.數(shù)據(jù)去重?cái)?shù)據(jù)去重是數(shù)據(jù)分析中必然會(huì)使用的處理手段。去重能夠?yàn)樽畲蟪潭鹊慕档蛿?shù)據(jù)冗余性,為數(shù)據(jù)分析提供優(yōu)質(zhì)的數(shù)據(jù)源。首先,需要使用count()函數(shù)對(duì)數(shù)據(jù)源進(jìn)行整體數(shù)據(jù)測(cè)量并觀察,具體代碼如下。importpandasaspddata=pd.read_json("./studentJobData_year2022.json")student=data["student"]data=pd.DataFrame([iforiinstudent])data.count()8.4數(shù)據(jù)處理8.4數(shù)據(jù)處理class11855student11857education11857status11645profession10629salary11857city11857company11857date11857dtype:int64由運(yùn)行結(jié)果可見,學(xué)生總數(shù)為11857,但是class、status、profession三項(xiàng)中有缺失值。為了避免有重復(fù)值,先使用drop_duplicates()將重復(fù)值刪除,具體代碼如下。data.drop_duplicates()3.缺失值處理缺失值的處理十分重要,如果數(shù)據(jù)源中存在缺失值在數(shù)據(jù)處理中程序?qū)?huì)報(bào)錯(cuò),處理后的數(shù)據(jù)效果將會(huì)大打折扣,使數(shù)據(jù)觀察者得出錯(cuò)誤結(jié)論。本案例使用isnull()函數(shù)與sum()函數(shù)進(jìn)行數(shù)據(jù)統(tǒng)計(jì),通過查看相應(yīng)結(jié)果可以看出數(shù)據(jù)的缺失數(shù)量,具體如下。data.isnull().sum()8.4數(shù)據(jù)處理class2student0education0status212profession1228salary0city0company0date0dtype:int64通過上述結(jié)果可以看出class、profession、statues三項(xiàng)數(shù)據(jù)均有缺失值,缺失數(shù)量分別為2、1228、212,此項(xiàng)目中為了不減少數(shù)據(jù)量使用filllna()函數(shù)填充缺失值,將education、profession、statues三項(xiàng)數(shù)據(jù)缺失值分別填充為“2112”、“非計(jì)算機(jī)專業(yè)”、“待業(yè)”參數(shù),具體如下data["class"]=data["class"].fillna(value="2112")data["profession"]=data["profession"].fillna(value="非計(jì)算機(jī)專業(yè)")data["status"]=data["status"].fillna(value="待業(yè)")data.isnull().sum()8.4數(shù)據(jù)處理class0student0education0status0profession0salary0city0company0date0dtype:int648.5數(shù)據(jù)分析1.就業(yè)城市分析就業(yè)城市可以使用,通過觀察具體的地區(qū)分布可以看出數(shù)據(jù)的基本,具體步驟如下。首先,將城市數(shù)據(jù)提取出來。city_list=set(data["city"])8.5數(shù)據(jù)分析需要定義處理城市數(shù)據(jù)處理函數(shù),該函數(shù)需要將數(shù)據(jù)處理成如[(城市名,數(shù)值),(城市名,數(shù)值)]形式。此處使用雙層for循環(huán)實(shí)現(xiàn),具體代碼如下。defcity_num(city_list,data_list):city_count=[]foriincity_list:num=0forjindata_list:ifj==i:num=num+1city_count.append((i,num))returncity_countdata_city=city_num(city_list,data["city"])8.5數(shù)據(jù)分析[('深圳市',1084),('鹽城市',1),('蕪湖市',5),('孝感市',2),('南通市',6),('嘉興市',25),('泉州市',4),('常州市',17),('福州市',39),('河源市',1),('太原市',28),('青島市',198),('合肥市',317),('三亞市',1),('成都市',849),('新鄉(xiāng)市',6),('江門市',2),('湖州市',7),('泰州市',1),('煙臺(tái)市',12),('馬鞍山市',4),('龍巖市',1),('池州市',1),('玉溪市',1),('棗莊市',1),('寧波市',147),('鄭州市',216),('石家莊市',18),('荊州市',2),('上饒市',1),('滄州市',1),('咸寧市',1),('蘭州市',24),('哈爾濱市',13),('佛山市',29),('綿陽市',5),('徐州市',1),('榆林市',1),('昆明市',9),('衢州市',2),('漢中市',1),('貴陽市',28),('三門峽市',1),('郴州市',1),('吉林市',2),('秦皇島市',1),('杭州市',1344),('蚌埠市',1),('惠州市',11),...將得到的數(shù)據(jù)按照城市數(shù)量排序,具體代碼如下df=pd.DataFrame(data_city)df=df.sort_values(by=1,axis=0,ascending=False)print(df)8.5數(shù)據(jù)分析01136北京189774杭州市1344128深圳市108414西安市94164武漢市869........48株洲市165河池市147衡水市1107漢中市126淮安市1[145rowsx2columns]2.就業(yè)曲線就業(yè)曲線圖可以幫助就業(yè)老師分析全國校區(qū)的就業(yè)形勢(shì),從而調(diào)整就業(yè)策略。首先,將就業(yè)數(shù)據(jù)的日期提取,并通過去重操作獲得純凈的日期數(shù)據(jù)值,并且由于數(shù)據(jù)龐大,因此將日期數(shù)據(jù)轉(zhuǎn)換為“年-月”的形式,具體代碼如下。8.5數(shù)據(jù)分析date_getjob=list(set(data["date"]))new_data=[]foriindata["date"]:i=i[0:7]new_data.append(i)date_getjob.sort()#將日期排序date_getjob_1=[]#創(chuàng)建新列表foriindate_getjob:i=i[0:7]#截取”年—月”date_getjob_1.append(i)print(date_getjob_1)8.5數(shù)據(jù)分析['2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-01','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-02','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03','2022-03',...,'2022-10','2022-10','2022-10','2022-10','2022-10','2022-10','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-11','2022-12','2022-12','2022-12']將對(duì)應(yīng)日期中的就業(yè)人數(shù)統(tǒng)計(jì)出來,并生成相應(yīng)的字典形式數(shù)據(jù),具體代碼如下。8.5數(shù)據(jù)分析date_data={}foriindate_getjob_1:sum_num=0forjinnew_data:ifi==j:sum_num=sum_num+1date_data[i]=sum_num接下來將數(shù)據(jù)排序,具體代碼如下。date_data1=list(date_data.keys())date_data1.sort()a={}foriindate_data1:a[i]=date_data[i]print(a){'2022-01':486,'2022-02':731,'2022-03':1384,'2022-04':1053,'2022-05':946,'2022-06':880,'2022-07':1274,'2022-08':1927,'2022-09':1372,'2022-10':919,'2022-11':880,'2022-12':5}最后,將數(shù)據(jù)進(jìn)行可視化處理,這里需要將生成的字典鍵值對(duì)分離用作折線圖的橫軸與縱軸,繪制折線圖具體代碼如下。8.5數(shù)據(jù)分析frommatplotlibimportpyplotaspltdate_1=[]#存放時(shí)間count=[]#存放數(shù)量forkey,valueina.items():date_1.append(key)count.append(value)plt.plot(date_1,count)plt.show()3.狀態(tài)分析分析學(xué)生的狀態(tài)有利于就業(yè)老師對(duì)就業(yè)數(shù)據(jù)的整體把控,通過查看學(xué)生的狀態(tài)結(jié)構(gòu)表能夠適時(shí)地調(diào)整招生對(duì)象。首先,將學(xué)生的狀態(tài)信息從數(shù)據(jù)源中提取并去重,然后查看提取狀態(tài)信息,將不同狀態(tài)的學(xué)生進(jìn)行分類,具體代碼如下。8.5數(shù)據(jù)分析data_statue=set(data["status"])data_statuedata_zaizhi=data[data["status"]=="在職"]data_zaidu=data[data["status"]=="在讀"]data_dasan=data[data["status"]=="大三"]data_daer=data[data["status"]=="大二"]data_dasi=data[data["status"]=="大四"]data_yingjie=data[data["status"]=="應(yīng)屆"]data_daiye=data[data["status"]=="待業(yè)"]data_feiyingjie=data[data["status"]=="非應(yīng)屆"]將不同類別的信息提取出來,并使用count()對(duì)數(shù)據(jù)進(jìn)行匯總,8.5數(shù)據(jù)分析a=[["在職",data[data["status"]=="在職"].count().student],["在讀",data[data["status"]=="在讀"].count().student],["大三",data[data["status"]=="大三"].count().student],["大二",data[data["status"]=="大二"].count().student],["大四",data[data["status"]=="大四"].count().student],["應(yīng)屆",data[data["status"]=="應(yīng)屆"].count().student],["待業(yè)",data[data["status"]=="待業(yè)"].count().student],["非應(yīng)屆",data[data["status"]=="非應(yīng)屆"].count().student]]a使用數(shù)據(jù)對(duì)應(yīng)數(shù)據(jù)pie()類數(shù)據(jù)進(jìn)行繪制8.5數(shù)據(jù)分析importmatplotlib.pyplotaspltdata_zaizhi=data[data["status"]=="在職"]data_zaidu=data[data["status"]=="在讀"]data_dasan=data[data["status"]=="大三"]data_daer=data[data["status"]=="大二"]data_dasi=data[data["status"]=="大四"]data_yingjie=data[data["status"]=="應(yīng)屆"]data_daiye=data[data["status"]=="待業(yè)"]data_feiyingjie=data[data["status"]=="非應(yīng)屆"]a=[data[data["status"]=="在職"].count().student,data[data["status"]=="在讀"].count().student,data[data["status"]=="大三"].count().student,data[data["status"]=="大二"].count().student,data[data["status"]=="大四"].count().student,data[data["status"]=="應(yīng)屆"].count().student,data[data["status"]=="待業(yè)"].count().student,data[data["status"]=="非應(yīng)屆"].count().student]status=["在職","在讀","大三","大四","應(yīng)屆","待業(yè)","非應(yīng)屆"]plt.pie(a,labels=["在職","在讀","大三","大二","大四","應(yīng)屆","待業(yè)","非應(yīng)屆"],autopct="%1.1f%%")plt.rcParams['font.sans-serif']=['SimHei']#中文顯示plt.title("學(xué)生就業(yè)狀態(tài)分析")plt.show()4.就業(yè)薪資與學(xué)歷分析8.5數(shù)據(jù)分析new_data=data.drop(['city',"class","company","date","profession","student"],axis=1)Print(new_data)通過就業(yè)薪資和學(xué)歷的分析可以幫助學(xué)??刂粕础楸阌跀?shù)據(jù)的審查,本此分析方向只著重于高中、??啤⒈究?、碩士首先,將數(shù)據(jù)處理成只有學(xué)歷和薪資的數(shù)據(jù)表,此處使用的drop()函數(shù)進(jìn)行刪除,具體如下。運(yùn)行結(jié)果如下8.5數(shù)據(jù)分析educationsalary0???0001專科140002???30003???30004???4000.........11852本科600011853???00011854本科600011855高中以下700011856???000[11857rowsx2columns]將處理完成的數(shù)據(jù)繪制成箱線圖,具體代碼如下。8.5數(shù)據(jù)分析importmatplotlib.pyplotaspltimportmatplotlib#將??品纸Ma=new_data[new_data['education'].isin(["???])]a=a.drop('education',axis=1)a=a.values.tolist()zhuan=[]fors_liina:zhuan.append(s_li[0])zhuan_1=[]

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論