嗨喽! 大家好,我是“流水不争先,争得滔滔不绝”的翀,18双非本科生一枚,正在努力!欢迎大家来交流学习,一起学习数据分析,希望我们一起好好学习,天天向上,目前是小社畜一枚~~
前言
完整数据包括一些简单的分析,做得很简单,因为累了要睡了
详细文档与数据下载超链接
import pandas as pd
import matplotlib.pyplot as plt
import jieba
from collections import Counter
import pandas as pd
from wordcloud import WordCloudimport warnings
warnings.filterwarnings("ignore")
data =pd.read_excel('./boss网站招聘岗位信息.xlsx',sheet_name='Sheet1')
1 数据探索
data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2913 entries, 0 to 2912
Data columns (total 9 columns):# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 标题 2913 non-null object1 地区 2913 non-null object2 公司名 2913 non-null object3 公司领域 2913 non-null object4 薪资 2913 non-null object5 经验 2913 non-null object6 规模 2913 non-null object7 福利 2531 non-null object8 详情页 2913 non-null object
dtypes: object(9)
memory usage: 204.9+ KB
columns = data.columns
for i in columns:print('---------------------------'+i+'------------------------------')print(display(pd.DataFrame(data[i].value_counts())))
---------------------------标题------------------------------
标题 | |
---|---|
数据分析师 | 162 |
大数据开发 | 156 |
大数据开发工程师 | 118 |
Python | 117 |
爬虫工程师 | 106 |
... | ... |
Java开发工程师 | 1 |
系统运维 | 1 |
人工智能讲师(四川科技) | 1 |
【2022校招】数据分析 | 1 |
AI 算子测试开发 | 1 |
913 rows × 1 columns
None
---------------------------地区------------------------------
地区 | |
---|---|
深圳·南山区·科技园 | 58 |
南京·江宁区·秣陵 | 48 |
北京·海淀区·西北旺 | 40 |
北京 | 39 |
北京·朝阳区·望京 | 37 |
... | ... |
深圳·南山区·南山中心 | 1 |
武汉·洪山区·街道口 | 1 |
无锡·梁溪区·上马墩 | 1 |
抚州·金溪县·秀谷中大道 | 1 |
杭州·滨江区·星光大道 | 1 |
1209 rows × 1 columns
None
---------------------------公司名------------------------------
公司名 | |
---|---|
中软国际 | 151 |
法本 | 67 |
博彦科技 | 53 |
软通动力信息技术集团 | 37 |
神州信息 | 18 |
... | ... |
吉灵科技 | 1 |
河南日盛 | 1 |
深度智耀 | 1 |
北京千喜鹤公司 | 1 |
无锡出类 | 1 |
1936 rows × 1 columns
None
---------------------------公司领域------------------------------
公司领域 | |
---|---|
计算机软件 | 893 |
互联网 | 499 |
移动互联网 | 186 |
数据服务 | 154 |
电子商务 | 120 |
... | ... |
婚庆/摄影 | 1 |
装修装饰 | 1 |
日化 | 1 |
制药 | 1 |
地产经纪/中介 | 1 |
82 rows × 1 columns
None
---------------------------薪资------------------------------
薪资 | |
---|---|
10-15K | 147 |
8-13K | 72 |
5-10K | 71 |
4-6K | 57 |
15-30K | 53 |
... | ... |
22-44K | 1 |
7-11K·13薪 | 1 |
400-600元/天 | 1 |
15-18K·13薪 | 1 |
70-80K | 1 |
483 rows × 1 columns
None
---------------------------经验------------------------------
经验 | |
---|---|
1-3年大专 | 365 |
经验不限大专 | 310 |
3-5年大专 | 277 |
5-10年本科 | 265 |
1-3年本科 | 220 |
... | ... |
7天/周1个月本科 | 1 |
4天/周2个月学历不限 | 1 |
应届生硕士 | 1 |
5-10年中专/中技 | 1 |
3天/周6个月学历不限 | 1 |
111 rows × 1 columns
None
---------------------------规模------------------------------
规模 | |
---|---|
10000人以上 | 743 |
20-99人 | 621 |
100-499人 | 573 |
1000-9999人 | 491 |
0-20人 | 315 |
500-999人 | 170 |
None
---------------------------福利------------------------------
福利 | |
---|---|
五险一金 | 25 |
员工旅游,免费班车,五险一金,带薪年假,年终奖,餐补,节日福利,加班补助,定期体检,零食下午茶 | 13 |
带薪年假,员工旅游,节日福利,零食下午茶,加班补助,免费班车,定期体检,五险一金,年终奖,餐补 | 13 |
五险一金,加班补助,员工旅游,年终奖,免费班车,定期体检,餐补,节日福利,带薪年假,零食下午茶 | 13 |
餐补,员工旅游,零食下午茶,五险一金,年终奖,定期体检,带薪年假,免费班车,节日福利,加班补助 | 13 |
... | ... |
带薪年假,零食下午茶,通讯补贴,公司餐厅,年终奖,六险一金,定期体检,餐补,免费班车,节日福利,股票期权,交通补助 | 1 |
员工旅游,加班福利,带薪年假,节日福利,定期体检,五险一金,餐补,入职五险一金 | 1 |
定期体检,股票期权,带薪年假,五险一金,加班补助,交通补助,年终奖,餐补,节日福利 | 1 |
团建基金,员工旅游,带薪年假,五险一金,年终奖,全勤奖,爱心点心,节日福利,零食下午茶,项目奖金 | 1 |
补充医疗保险,内部竞聘,节日福利,带薪年假,员工旅游,餐补,加班补助,零食下午茶,免费班车 | 1 |
2152 rows × 1 columns
None
---------------------------详情页------------------------------
详情页 | |
---|---|
https://www.zhipin.com/job_detail/4c25812b39e3b0321nx53925EFdW.html | 13 |
https://www.zhipin.com/job_detail/b53e88d4252d99b11nxy2Nm4FVJW.html | 13 |
https://www.zhipin.com/job_detail/67288b9757b2ef7303150928GFI~.html | 13 |
https://www.zhipin.com/job_detail/bfc8af865c7e41001nB82dy5EVBT.html | 13 |
https://www.zhipin.com/job_detail/6dd6a0d1e6234f2b1nx-2NS9FFBR.html | 13 |
... | ... |
https://www.zhipin.com/job_detail/344ea19ce102f33e1nF93N-_F1JR.html | 1 |
https://www.zhipin.com/job_detail/2778e16c9b3f31d01nJ53NS_GVRR.html | 1 |
https://www.zhipin.com/job_detail/80ccca15466fca951nF-3Ny_FVpS.html | 1 |
https://www.zhipin.com/job_detail/c484ae92e5af62ad1n142Ny_ElFQ.html | 1 |
https://www.zhipin.com/job_detail/0b2e0a2d249a171d1nJ-2dq4FlpS.html | 1 |
2595 rows × 1 columns
None
2 数据分析
guimo = pd.DataFrame(data['规模'].value_counts().reset_index())
guimo = guimo.rename(columns={'index':'规模','规模':'人数'})
plt.rcParams["font.family"] = 'Arial Unicode MS'
plt.bar(guimo['规模'], guimo['人数'])
plt.xlabel('规模')
plt.ylabel('人数')
x=np.arange(6) #课程品类数量已知为14,也可以用len(ppv3.index)
#设置y轴的数值,需将numbers列的数据先转化为数列,再转化为矩阵格式
y=np.array(list(guimo['人数']))
for a,b in zip(x,y):plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=10)
plt.title('公司规模人数的直方图分布')
Text(0.5, 1.0, '公司规模人数的直方图分布')
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aoOz66NN-1641306756600)(output_7_1.png)]
- 2分析数据分析的学历要求
data['学历'] = '天天开心'
xueli = ['大专以下','大专','本科','硕士','博士','学历不限']
c = Counter()
for i in range(len(data)):for j in xueli:if j in data['经验'][i]:c[j]+=1
xueli_data = pd.DataFrame([])
for (k,v) in c.most_common(5):# 输出词频最高的前500个词xueli_data = xueli_data.append(pd.DataFrame({"学历":[k], "数量":[v]}), ignore_index=True)
plt.rcParams["font.family"] = 'Arial Unicode MS'
plt.bar(xueli_data['学历'], xueli_data['数量'])
plt.xlabel('学历')
plt.ylabel('数量')
x=np.arange(5) #课程品类数量已知为14,也可以用len(ppv3.index)
#设置y轴的数值,需将numbers列的数据先转化为数列,再转化为矩阵格式
y=np.array(list(xueli_data['数量']))
for a,b in zip(x,y):plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=10)
plt.title('数据分析学历要求的直方图分布')
Text(0.5, 1.0, '数据分析学历要求的直方图分布')
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oZ8R2oxG-1641306756602)(output_9_1.png)]
data['city'] = '天天开心'
for i in range(len(data)):data['city'][i] = data['地区'][i].split('·')[0]
city = pd.DataFrame(data['city'].value_counts().reset_index())
city = city.rename(columns={'index':'city','city':'数量'})[:10]
plt.rcParams["font.family"] = 'Arial Unicode MS'
plt.bar(city['city'], city['数量'])
plt.xlabel('city')
plt.ylabel('数量')
x=np.arange(10) #课程品类数量已知为14,也可以用len(ppv3.index)
#设置y轴的数值,需将numbers列的数据先转化为数列,再转化为矩阵格式
y=np.array(list(city['数量']))
for a,b in zip(x,y):plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=12)
plt.title('数据分析公司城市的直方图分布')
Text(0.5, 1.0, '数据分析公司城市的直方图分布')
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f0IdsWN7-1641306756604)(output_10_1.png)]
- 4 词云图
def cal_word_freq(texts):words = []for text in texts:words.extend(list(jieba.cut(text)))return pd.Series(words).value_counts()
data['福利']=data['福利'].astype(str)
qieci = pd.DataFrame(cal_word_freq(data['福利'].to_list()).reset_index())
qieci = qieci.rename(columns={'index':'key_word','0':'词频'})[:50]
bimg = imread('heart.jpeg')
wordcloud = WordCloud(background_color="white", mask=bimg, font_path='simhei.ttf')
wordcloud = wordcloud.fit_words(words_stat.head(4000).itertuples(index=False))
bimgColors = ImageColorGenerator(bimg)
plt.axis("off")
plt.imshow(wordcloud.recolor(color_func=bimgColors))
plt.show()
qieci.to_excel('./词云.xlsx',index=False)
qieci
key_word | 0 | |
---|---|---|
0 | , | 19213 |
1 | 五险 | 2394 |
2 | 一金 | 2374 |
3 | 带薪 | 2159 |
4 | 年 | 2155 |
5 | 假 | 2154 |
6 | 福利 | 2134 |
7 | 节日 | 2091 |
8 | 年终奖 | 1995 |
9 | 补助 | 1971 |
10 | 体检 | 1788 |
11 | 定期 | 1782 |
12 | 员工 | 1546 |
13 | 旅游 | 1533 |
14 | 零食 | 1286 |
15 | 下午茶 | 1283 |
16 | 餐补 | 1259 |
17 | 加班 | 1106 |
18 | 补充 | 947 |
19 | 医疗保险 | 942 |
20 | 交通 | 877 |
21 | 补贴 | 770 |
22 | 免费 | 745 |
23 | 股票 | 725 |
24 | 期权 | 725 |
25 | 通讯 | 722 |
26 | 班车 | 671 |
27 | 全勤奖 | 662 |
28 | nan | 382 |
29 | 包吃 | 335 |
30 | 住房补贴 | 325 |
31 | 企业 | 78 |
32 | 团建 | 70 |
33 | 文化 | 68 |
34 | 活动 | 46 |
35 | 健身房 | 42 |
36 | 生日 | 33 |
37 | 奖金 | 27 |
38 | 绩效奖金 | 22 |
39 | 双休 | 21 |
40 | 晚餐 | 20 |
41 | 培训 | 20 |
42 | 六险 | 20 |
43 | 项目 | 19 |
44 | 健身 | 19 |
45 | 朝九晚 | 18 |
46 | 包住 | 18 |
47 | 六 | 18 |
48 | 提供 | 18 |
49 | 住宿 | 17 |
city = pd.DataFrame(data['公司领域'].value_counts().reset_index())
city = city.rename(columns={'index':'公司领域','公司领域':'数量'})[:15]
plt.figure(figsize=(16, 6.5))
plt.rcParams["font.family"] = 'Arial Unicode MS'
plt.bar(city['公司领域'], city['数量'])
plt.xlabel('公司领域')
plt.ylabel('数量')
x=np.arange(15) #课程品类数量已知为14,也可以用len(ppv3.index)
#设置y轴的数值,需将numbers列的数据先转化为数列,再转化为矩阵格式
y=np.array(list(city['数量']))
for a,b in zip(x,y):plt.text(a, b+0.05, '%.0f' % b, ha='center', va= 'bottom',fontsize=12)
plt.title('数据分析公司领域的直方图分布')
Text(0.5, 1.0, '数据分析公司领域的直方图分布')
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0TLyTE3J-1641306756606)(output_15_1.png)]
总结
专栏学习
01 【数据分析实战项目】: 无人智能售货机商务分析、 线上课程智能推荐、 学术前沿趋势分析
02 【算法--数据挖掘】: 机器学习----吃瓜教程!、 集成学习、 深度学习 学术前沿趋势分析
03 【天池数据挖掘竞赛】: 心电信号多分类分类、 新闻推荐入门赛系统项目
04 【Python数据分析】: Numpy 数值计算基础、 Matplotlib 数据可视化基础、 Pandas 统计分析基础、 Pandas 进行数据预处理、 scikit-learn 构建模型
往期精彩内容
01 【常见的数据分析师的面试问题】: 基础知识考查、概率论与数理统计、数据挖掘、常见模型介绍、数据分析师工作必备技能等等
02 【基于条件随机场模型的中文分词】: 中文分析、python代码实现
03 【 Github开源项目】: Github开源项目 数分/数挖学习路线
欢迎关注我,一起交流学习探索数据分析的世界,洞察数据!努力接受社会毒打~~
@翀- 我的博客主页