资源描述:
《Python拉勾网数据采集与可视化.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Python拉勾网数据采集与可视化 数据可视化 下载下来的数据长成这个样子: 注意标题(也就是列明)是我自己添加的。 导入模块并配置绘图风格 importpandasaspd#数据框操作 importnumpyasnp importmatplotlib.pyplotasplt#绘图 importjieba#分词 fromwordcloudimportWordCloud#词云可视化 importmatplotlibasmpl#配置字体 frompyechartsimportGeo#地理图 mpl.rcParams[“font.sans-ser
2、if”]=[“MicrosoftYaHei”] #配置绘图风格 plt.rcParams[“axes.labelsize”]=16. plt.rcParams[“xtick.labelsize”]=14. plt.rcParams[“ytick.labelsize”]=14. plt.rcParams[“legend.fontsize”]=12. plt.rcParams[“figure.figsize”]=[15.,15.] 注意:导入模块的时候其他都容易解决,除了wordcloud这个模块,这个模块我建议大家手动安装,如果pip安装的话,会提示你缺少
3、C++14.0之类的错误,导致安装不上。手动下载whl文件就可以顺利安装了。 数据预览 #导入数据 data=pd.read_csv(‘D:Windows7DocumentsDesktopMyLaGouDataPython.csv’,encoding=‘gbk’)#导入数据 data.head() read_csv路径不要带有中文 data.tail() 学历要求 data[‘学历要求’].value_counts().plot(kind=‘barh’,rot=0) plt.show() 工作经验 data[‘工作经验’].value
4、_counts().plot(kind=‘bar’,rot=0,color=‘b’) plt.show() Python热门岗位 final=‘‘ stopwords=[‘PYTHON’,’python’,’Python’,’工程师’,’(’,’)’,’/’]#停止词 forninrange(data.shape[0]): seg_list=list(jieba.cut(data[‘岗位职称’][n])) forseginseg_list: ifsegnotinstopwords: final=final+seg+‘‘ #final得到的词汇
5、 工作地点 data[‘工作地点’].value_counts().plot(kind=‘pie’,autopct=‘%1.2f%%’,explode=np.linspace(0,1.5,25)) plt.show() 工作地理图 #提取数据框 data2=list(map(lambdax:(data[‘工作地点’][x],eval(re.split(‘k
6、K’,data[‘工资’][x])[0])*1000),range(len(data)))) #提取价格信息 data3=pd.DataFrame(data2) #转化成Geo需要的格式
7、data4=list(map(lambdax:(data3.groupby(0).mean()[1].index[x],data3.groupby(0).mean()[1].values[x]),range(len(data3.groupby(0))))) #地理位置展示 geo=Geo(“全国Python工资布局”,“制作人:挖掘机小王子”,title_color=“#fff”,title_pos=“left”,width=1200,height=600, background_color=‘#404a59’) attr,value=geo.cast(dat
8、a4) geo.add(““,attr,value,type=“heatmap”,is_visualmap=True,visual_range=[0,300],visual_text_color=‘#fff’) #中国地图Python工资,此分布是最低薪资 geo