數據分析師職位分析
1.數據預覽
#導入數據處理包nimport pandas as pdnimport numpy as npnfrom pandas import DataFramen
可以看出,本份文件共有6876條數據,共17個數據維度。接下來查看數據是否有重複值
不重複數據共有5031條。說明這份數據有1845條重複值。接下來進行數據清洗。
2.數據清洗
2.1去重
利用pandas中的drop_duolicates()方法即可完成去重。具體操作如下:
df_duplicates = df.drop_duplicates(subset = positionId, keep = first)ndf_duplicates.info()n
去重之後,共有5031條數據,17個數據維度。
2.2工資區間拆分
由上圖 可見,如果需要對薪資作分析,必須要將salary欄位進行拆分,分別拆分為最低薪資和最高薪資,以便後續分析。
- 編寫薪資拆分函數
#通過查找『-』的位置,再通過切片的方式對薪資進行拆分ndef cut_word(word,method):n position = word.find(-)n lenth = len(word)n if position != -1:n bottomsalary = word[:position-1]n topsalary = word[position+1:lenth-1]n else:n bottomsalary = word[:word.upper().find(K)]n topsalary = bottomsalaryn if method == bottom:n return bottomsalaryn else:n return topsalaryn
- 函數應用
df_duplicates[topsalary] = df_duplicates.salary.apply(cut_word, method =top)ndf_duplicates[bottomsalary] = df_duplicates.salary.apply(cut_word, method = bottom)n
最終拆分結果如下
2.3添加平均薪資欄位
df_duplicates[avgsalary] = df_duplicates.apply(lambda x:(x.bottomsalary+x.topsalary)/2,axis = 1)n
由於數據通過爬蟲規則化爬取,數據本身較為乾淨,只有些重複值等。簡單處理一下即可。
3.數據分析
選取所需維度進行分析
選取職位所在城市、公司名字、公司規模、學歷要求、職位名稱、職位標籤、工作年限要求、平均工資這幾個維度進行分析。
df_clean = df_duplicates[[city, companyShortName, companySize, education, positionName, positionLables, workYear, avgsalary]]n
3.1.職位地域分布
areas = df_clean.city.value_counts()nareas.plot(kind = bar,figsize = (10,4))nplt.title(職位&地域分布)nplt.xlabel(城市)nplt.ylabel(職位數量)n
從圖中可以看出,北京的數據分析師職位遙遙領先與其他城市,其次,上海、深圳、杭州、廣州也是職位較多的城市。北上廣深杭依舊是互聯網相關職位機會最多的城市!
3.2總體薪資分布
plt.xticks(range(0,90,5)) ndf_clean.avgsalary.hist(bins = 30)nplt.title(平均薪資分布)nplt.xlabel(薪資(K/月))n
數據分布呈雙峰狀,因為原始數據來源於招聘網站的爬取,薪資很容易集中在某個區間,不是真實薪資的反應。可以看出,數據分析師的平均薪資基本都在5K/月以上,大部分集中在10-15k/月。薪資水平還是很高的。仔細觀察圖的右側,有的甚至達到75k/月。由此看來,數據分析師的職業前景很不錯,但能達到什麼水平就看個人努力了。
3.3不同城市薪酬分布情況
df_clean.boxplot(column = avgsalary, by = city, figsize = (12,6),fontsize = 14)nplt.title(城市&薪資分布)nplt.xlabel(城市)nplt.ylabel(薪資(K/月))n
從城市分布看,北京的平均薪資依舊領跑,其次是深圳、上海、杭州、廣州。依舊是這幾個城市,機會多,薪資水平也高,去這些地方發展應該不錯。
3.4不同學歷薪酬分布
df_clean.boxplot(column = avgsalary, by = city, figsize = (12,6),fontsize = 14)nplt.title(學歷&薪資分布)nplt.xlabel(學歷)nplt.ylabel(薪資(K/月))n
從學歷看,博士薪資遙遙領先,雖然在top區域不如本科和碩士,專科學歷稍有弱勢。
3.5不同工作年限薪酬分布
df_clean.boxplot(column = avgsalary, by = workYear, figsize = (9,7))nplt.title(工作經驗&薪資分布)nplt.xlabel(工作年限)nplt.ylabel(薪資(K/月))n
工作年限看,薪資的差距進一步拉大,畢業生和工作多年的不在一個梯度。雖然沒有其他行業的數據對比,但是可以確定,數據分析師的職場上升路線還是挺光明的。
3.6不同城市、不同工作年限薪酬分布
df_clean.groupby([city, education]).mean().unstack().plot.bar(figsize = (14, 6))n
從整體看,薪資水平與學歷水平呈正相關。本科與碩士差距並不十分明顯,本科學歷足以滿足工作的要求。博士職位不多,但是深圳的博士薪資遙遙領先。
3.7不同城市各平均薪酬區間分布
#對薪酬進行分段nbins = [0,3,5,10,15,20,30,100]nlevel = [0-3, 3-5, 5-10,10-15,15-20, 20-30, 30+]ndf_clean[level] = pd.cut(df_clean[avgsalary], bins = bins, labels = level)ndf_clean[[avgsalary, level]][level].value_counts()n
3.8不同城市平均薪資區間分布佔比
df_level = df_clean.groupby([city, level]).avgsalary.count().unstack()ndf_level_prop = df_level.apply(lambda x: x/x.sum(), axis =1)ndf_level_prop.plot.bar(stacked = True, figsize = (14,6))n
由圖中整體來看,灰色區塊佔比最多,其次是紫色。從這張圖也能反映各個城市的薪資區間分布。以武漢為例,大多數數據分析師薪資分布於10-15k/月,其次是5-10k/月。30k/月以上的基本沒有。
3.9公司所處行業分析
import re #re模塊提供了對正則表達式的支持nimport jieba as jbnfrom wordcloud import WordCloudnword_str = ,.join(df_clean[industryField]) # 以,為分隔符,將所有的元素合併成一個新的字元串,注意:csv文件中,單元格之間有逗號。n#對文本進行分詞nword_split = jb.cut(word_str) #精確模式n#使用|作為分隔符nword_split1 = "|".join(word_split)npattern=re.compile("移動|互聯網|其他|金融|企業|服務|電子商務|O2O|數據|服務|醫療健康|遊戲|社交網路|招聘|生活服務|文化娛樂|旅遊|廣告營銷|教育|硬體|信息安全")n#匹配所有文本字元;pattern 我們可以理解為一個匹配模式,用re.compile()方法來獲得這個模式nword_w=pattern.findall(word_split1) #搜索word_split1,以列表形式返回全部能匹配的子串nword_s = str(word_w)nmy_wordcloud = WordCloud(font_path="C:WINDOWSFontssimsun.ttc",width_=900,height=400,background_color="white").generate(word_s)nplt.imshow(my_wordcloud)nplt.axis("off") #取出坐標軸nplt.show()n
仔細觀察詞雲,互聯網、移動互聯網、電子商務、數據服務、O2O這些行業對於數據分析師的需求較大。
4.分析總結:
從總體薪酬分布情況上,數據分析這一職位薪酬水平較高,大部分分布在每月10k-25k之間。但這僅僅是拉勾網上所反映的,具體情況還需進一步考察。
從不同城市薪資分布情況得出,在北京工作的數據分析師工資中位數在20k左右,居全國之首。其次是上海、杭州、深圳。數據分析師仍舊是在一線城市發展較好。
從不同學歷薪資情況得出,學歷越高,所獲得工資越高,其中專科生略有劣勢。想要在此領域有更長足發展,提升學歷十分有必要!
推薦閱讀:
※數據讀書分享系列篇(1):那些年數據分析師必讀書單
※做個數據分析,都是愛你的形狀
※快播CEO王欣快出獄了,當年舉報他的那個人面臨的是?
※若當時你也在泰坦尼克號上,能否活下來嗎?
※有哪些免費軟體能夠根據數據生成分析圖,簡易一些的,能夠讓數據分析的新手快速掌握數據分析方法?
TAG:数据分析 |