
作者:俊欣
来源:关于数据分析与可视化
随着各行各业都在进行数字化转型,数据方面的人才也成为了各家企业招聘的重点对象,不同数据类型的岗位提供的薪资待遇又是如何的?哪个城市最需要数据方面的人才、未来的发展前景与钱途又是怎么样的?今天小编抓取了某互联网招聘平台上面的招聘信息,来为大家分析分析。我们大致会讲
我们用Python当中的requests模块来发送与接收请求,然后用BeautifulSoup模块也解析返回的数据,代码如下
@retry(stop=stop_after_attempt(7)) def make_requests(url):
response = requests.get(url=url, headers=headers)
response_1 = BeautifulSoup(response.text, "lxml") return response_1
解析数据的代码如下
def process_data(index, job_title, response_text):
response_2 = response_text.select("div.list__YibNq") for resp in response_2[0]: if resp.select("div.p-top__1F7CL a"):
job_titles = resp.select("div.p-top__1F7CL a")[0].get_text() else:
job_titles = "" if resp.select("span.money__3Lkgq"):
payments = resp.select("span.money__3Lkgq")[0].get_text() else:
payments = "" .........
然后最后将收集到的数据导出到excel当中,代码如下
df = pd.DataFrame(
{"职位名称": job_titles_list, "薪资待遇": payments_list, "工作年限": work_years_list, "公司名称": company_name_list, "所处行业": industry_list, "岗位简介": job_title_description_list}) path = "job_files/" if not os.path.exists(path): os.makedirs(path)
df.to_excel("./job_files/{}_{}.xlsx".format(job_title, index), index = False)
小编这次所抓取的岗位分别有“数据分析师”、“数据挖掘工程师”、“数据产品经理”、“大数据开发工程师”以及“数据运营助理”等等,接下来我们就针对所收集到的数据进行清洗与进一步的处理吧
我们用到的是Pandas模块,首先先导入所有收集到的数据
import pandas as pd import os
df_all = pd.DataFrame(columns=["职位名称", "薪资待遇", "工作年限", "公司名称", "所处行业", "岗位简介"]) for file in os.listdir("./job_files"):
df = pd.read_excel("./job_files/" + file)
df_all = df_all.append(df, ignore_index=True)
我们来看一下最终的数据集长什么样子
print(df_all.info())
output
<class 'pandas.core.frame.DataFrame'> RangeIndex: 2238 entries, 0 to 2237 Data columns (total 6 columns):
# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 职位名称 2238 non-null object 1 薪资待遇 2238 non-null object 2 工作年限 2238 non-null object 3 公司名称 2238 non-null object 4 所处行业 2234 non-null object 5 岗位简介 2238 non-null object dtypes: object(6)
memory usage: 105.0+ KB
数据集当中或许存在重复的内容,我们用drop_duplicates()方法来进行重复项的去除
df_all_1 = df_all.drop_duplicates()
df_all_1.info()
output
<class 'pandas.core.frame.DataFrame'> Int64Index: 2207 entries, 0 to 2237 Data columns (total 6 columns):
# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 职位名称 2207 non-null object 1 薪资待遇 2207 non-null object 2 工作年限 2207 non-null object 3 公司名称 2207 non-null object 4 所处行业 2203 non-null object 5 岗位简介 2207 non-null object dtypes: object(6)
memory usage: 120.7+ KB
df_all_1 = df_all_1.dropna(axis = 0, how = "any")
df_all_1.info()
output
<class 'pandas.core.frame.DataFrame'> Int64Index: 2203 entries, 0 to 2237 Data columns (total 6 columns):
# Column Non-Null Count Dtype
--- ------ -------------- ----- 0 职位名称 2203 non-null object 1 薪资待遇 2203 non-null object 2 工作年限 2203 non-null object 3 公司名称 2203 non-null object 4 所处行业 2203 non-null object 5 岗位简介 2203 non-null object dtypes: object(6)
memory usage: 120.5+ KB
接下来为了方便对薪资数据进行统计分析,我们对此也需要进行相对应的处理
df_all_1["薪资待遇"] = df_all_1["薪资待遇"].str.replace("k", "000")
我们先来看薪资上面的差距,根据不同的职位名称来看,例如我们来看“数据产品经理”这个岗位
df_all_1[df_all_1["职位名称"].str.contains("产品经理")]['薪资待遇'].value_counts().head(5)
output
20000-40000 66 15000-30000 48 15000-25000 46 20000-30000 27 25000-50000 26 Name: 薪资待遇, dtype: int64
较多的是集中在20K-40K这个范围当中,具体我们可以通过下面这个可视化的结果来看
我们可以发现的是整体的市场中“数据产品经理”这个岗位的整体待遇是相对更好一点的,其次便是“数据挖掘工程师”这个岗位,薪资一般也比较容易达到20K-40K之间的区间
接下来我们来看一下哪些城市对数据方面的人才需求是最多的,
df_all_1["城市分布"] = df_all_1["职位名称"].apply(lambda x: x.split("[")[1].split("·")[0])
df_all_1["城市分布"].value_counts().head(10)
output
北京 702 上海 446 深圳 404 杭州 194 广州 190 成都 68 武汉 57 西安 23 南京 18 苏州 15 Name: 城市分布, dtype: int64
可以看到的是对于数据方面的人才需求最旺盛的仍然是北京,上海排在第二,与此同时呢,杭州在这方面的需求上面已经超过了广州,位列第四,同时在前十名当中成都、南京以及武汉与西安都纷纷上榜
接下来我们来看一下哪个行业所需要的数据方面的人才最多,
df_all_1["行业"] = df_all_1["所处行业"].apply(lambda x: x.split("|")[0].split("/")[0])
df_all_1["行业"].value_counts().head(10)
output
数据服务 175 内容资讯,短视频 155 软件服务 141 科技金融 114 电商平台 84 IT技术服务 68 企业服务 61 游戏 55 专业服务 52 消费生活 52 Name: 行业, dtype: int64
从上面的结果中看到,除了“数据服务”行业之外,还有“内容咨询、短视频”领域、“软件服务”、“科技金融”、“电商平台”、“IT技术服务”等领域对于数据方面的人才都有着相当旺盛的需求
我们来看一下各家公司对于数据方面的人才,在学历上又有何种要求呢?
df_all_1["学历要求"] = df_all_1["工作年限"].apply(lambda x: x.split("/")[-1])
df_all_1["学历要求"].value_counts()
output
本科 1922 硕士 119 不限 77 大专 73 博士 12 Name: 学历要求, dtype: int64
一般来说仅仅是“本科”的学历就可以了,当然还有少数的公司对于学历的要求是局限在硕士之上
各家公司为了吸引越来越多的人才前往加入公司,也打出了各色各样的标语,小编做了汇总,并且做成词云图,首先我们用jieba模块对文本数据进行分词
word_num = jieba.lcut(text, cut_all = False)
rule = re.compile(r"^[u4e00-u9fa5]+$")
word_num_selected = [word for word in word_num if word not in stop_words and re.search(rule, word) and len(word) >= 2]
接着我们使用stylecloud模块来进行词云图的绘制
stylecloud.gen_stylecloud(text=" ".join(review_list), max_words=100, collocations=False,
font_path="KAITI.ttf", icon_name="fab fa-apple", size=653,
output_name="4.png")
output
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在人工智能领域,“大模型” 已成为近年来的热点标签:从参数超 1750 亿的 GPT-3,到万亿级参数的 PaLM,再到多模态大模型 GPT-4 ...
2025-10-22在 MySQL 数据库的日常运维与开发中,“更新数据是否会影响读数据” 是一个高频疑问。这个问题的答案并非简单的 “是” 或 “否 ...
2025-10-22在企业数据分析中,“数据孤岛” 是制约分析深度的核心瓶颈 —— 用户数据散落在注册系统、APP 日志、客服记录中,订单数据分散 ...
2025-10-22在神经网络设计中,“隐藏层个数” 是决定模型能力的关键参数 —— 太少会导致 “欠拟合”(模型无法捕捉复杂数据规律,如用单隐 ...
2025-10-21在特征工程流程中,“单变量筛选” 是承上启下的关键步骤 —— 它通过分析单个特征与目标变量的关联强度,剔除无意义、冗余的特 ...
2025-10-21在数据分析全流程中,“数据读取” 常被误解为 “简单的文件打开”—— 双击 Excel、执行基础 SQL 查询即可完成。但对 CDA(Cert ...
2025-10-21在实际业务数据分析中,我们遇到的大多数数据并非理想的正态分布 —— 电商平台的用户消费金额(少数用户单次消费上万元,多数集 ...
2025-10-20在数字化交互中,用户的每一次操作 —— 从电商平台的 “浏览商品→加入购物车→查看评价→放弃下单”,到内容 APP 的 “点击短 ...
2025-10-20在数据分析的全流程中,“数据采集” 是最基础也最关键的环节 —— 如同烹饪前需备好新鲜食材,若采集的数据不完整、不准确或不 ...
2025-10-20在数据成为新时代“石油”的今天,几乎每个职场人都在焦虑: “为什么别人能用数据驱动决策、升职加薪,而我面对Excel表格却无从 ...
2025-10-18数据清洗是 “数据价值挖掘的前置关卡”—— 其核心目标是 “去除噪声、修正错误、规范格式”,但前提是不破坏数据的真实业务含 ...
2025-10-17在数据汇总分析中,透视表凭借灵活的字段重组能力成为核心工具,但原始透视表仅能呈现数值结果,缺乏对数据背景、异常原因或业务 ...
2025-10-17在企业管理中,“凭经验定策略” 的传统模式正逐渐失效 —— 金融机构靠 “研究员主观判断” 选股可能错失收益,电商靠 “运营拍 ...
2025-10-17在数据库日常操作中,INSERT INTO SELECT是实现 “批量数据迁移” 的核心 SQL 语句 —— 它能直接将一个表(或查询结果集)的数 ...
2025-10-16在机器学习建模中,“参数” 是决定模型效果的关键变量 —— 无论是线性回归的系数、随机森林的树深度,还是神经网络的权重,这 ...
2025-10-16在数字化浪潮中,“数据” 已从 “辅助决策的工具” 升级为 “驱动业务的核心资产”—— 电商平台靠用户行为数据优化推荐算法, ...
2025-10-16在大模型从实验室走向生产环境的过程中,“稳定性” 是决定其能否实用的关键 —— 一个在单轮测试中表现优异的模型,若在高并发 ...
2025-10-15在机器学习入门领域,“鸢尾花数据集(Iris Dataset)” 是理解 “特征值” 与 “目标值” 的最佳案例 —— 它结构清晰、维度适 ...
2025-10-15在数据驱动的业务场景中,零散的指标(如 “GMV”“复购率”)就像 “散落的零件”,无法支撑系统性决策;而科学的指标体系,则 ...
2025-10-15在神经网络模型设计中,“隐藏层层数” 是决定模型能力与效率的核心参数之一 —— 层数过少,模型可能 “欠拟合”(无法捕捉数据 ...
2025-10-14