
数据分析行业薪资的秘密,你想知道的都在这里(二)
第二部分:职位信息清洗及数据提取
数据分析师的收入怎么样?哪些因素对于数据分析的薪资影响最大?哪些行业对数据分析人才的需求量最高?我想跳槽,应该选择大公司大平台还是初创的小公司?按我目前的教育程度,工作经验,和掌握的工具和技能,能获得什么样水平的薪资呢?
我们使用python抓取了2017年6月26日拉钩网站内搜索“数据分析”关键词下的450条职位信息。通过对这些职位信息的分析和建模来给你答案。
本系列文章共分为五个部分,分别是数据分析职位信息抓取,数据清洗及预处理,数据分析职位分布分析,数据分析薪资影响因素分析,以及数据建模和薪资预测。这是第二篇:职位信息清洗及数据提取。
第二篇文章是对获取的数据进行清洗,预处理和特征提取。在第一篇文章中我们抓取了拉勾网的450条职位信息及职位描述。但这些信息无法直接用于数据分析,我们需要对抓取到的信息进行清洗,规范现有数据的格式,提取信息中的数据及特征,为后续的数据分析和建模做准备。下面开始介绍苦逼的
数据清洗流程介绍。
数据清洗前的准备工作
首先是开始前的准备工作,导入所需要的库文件,包括常用的numpy和pandas库用于计算平均薪资以及对字符进行分列等操作,正则表达式re库用于字符的查找和替换操作,结巴分词库jieba用于对职位描述进行分词操作,自然语言处理nltk库用于计算职位描述的文字丰富度指标,还有KMeans用于对平均
薪资进行聚类操作。
导入我们之前抓取并保存的数据表,并查看数据表的维度以及各字段名称。后面我们会经常使用这些字段名称。
职位信息清洗及预处理
开始对职位信息的各个字段进行清洗和预处理,主要清洗的内容包括文本信息提取和处理,内容搜索和替换,字段内的空格处理,数值信息提取和计算,英文字母统一大小写等等。我们将先展示清洗前的原始字段,然后在展示清洗后的新字段内容。
行业字段清洗及处理
第一个清洗的字段是行业字段,抓取到的行业字段比较混乱,有些只有一个行业名称,有些则有两级的行业名称。我们保留行业字段第一部分的信息,对有两部分行业名称的字段取前一个。
由于行业名称之间有的以顿号分割,有的以逗号分割,我们先将所有的分隔符统一为逗号,然后对这个字段进行分列。并将分列后的字段重新拼接回原数据表中。
以下是清洗后的行业字段。
融资阶段字段清洗及处理
第二个清洗的字段是融资阶段字段,抓取下来的原始信息中对融资阶段进行了双重标识,例如成长型(A轮)。由于第一个标识”成长型”定义比较宽泛,我们提取第二个括号中的标识。
首先建立一个字典,将数据表中融资阶段的每一条信息与字典中的Key进行查找。如果融资阶段信息中包含字典中的任何一个key,我们就把这个key对应的value记录下来。
职位名称字段清洗及处理
第三个清洗的字段是职位名称,这里我们要提取职位里的title信息。没有title信息的都统一归为其他。具体方法是将每个职位名称与现有的title列表逐一判断,如果职位名称中含有title关键字就被划分到这个类别下。否则被归为其他类。
薪资范围字段清洗及处理
第四个清洗的字段是薪资范围。抓取到的数据中薪资范围是一个区间值,比较分散,无法直接使用。我们对薪资范围进行清洗,去掉无关的信息并只保留薪资上限和下限两个数字,然后使用这两个数字计算出平均薪资值。
职位信息中的数据提取
在职位描述字段中,包含了非常详细和丰富的信息。比如数据分析人才的能力要求和对各种数据分析工具的掌握程度等。我们对这个字段的一些特征进行指标化,对有价值的信息进行提取和统计。
职位描述字段中的数据提取
第五个清洗的字段是职位描述,准确的说从职位描述字段中提取信息。职位描述中包含了大量关于职位信息,工作内容,和个人能力方面的信息,非常有价值。但无法直接拿来使用。需要进行信息提取。我们将对职位描述字段进行三方面的信息提取。
第一是提取职位描述中对于个人能力的要求,换句话说就是数据分析人员使用工具的能力。我们整理了10个最常见的数据分析工具。来看下每个职位描述中都出行了哪些工具名称。由于一些工具间存在可替代性,所以每个职位描述中可能会出现多个工具的名称。没出现一个工具名称,我们就会在相应的工具下表示1,如果没有出现则标识为0。
职位描述所使用的字数统计
第二是计算职位描述所使用的字数,我们猜测初级简单的工作描述会比较简单,而高级复杂的工作描述则会更复杂一些。因此职位描述中不同的字数里也可能隐藏着某种信息或关联。
职位描述的词汇丰富度统计
第三是计算职位描述中的文字丰富度指标。和前面的字数统计一样。初级职位所对应的工作会相对简单,在描述上也会比较简单。高级职位则可能需要更详细的和负责的描述。因此文字丰富度指标上也会更高一些。
对数据分析的薪资进行聚类
完成清洗和数据提取后,平均薪资已经比薪资范围要具体的多了,但仍然比较离散。我们对这些平均薪资进行聚类来支持后面的建模和预测工作。以下是具体的代码和聚类结果。我们将类别标签添加到原始数据表中。
聚类后平均薪资被分为三个类别,第1类是薪资均值为19.3K的区间,分类标记为0。第二类是薪资均值为8.2K的区间,分类标记为1,。第三类是薪资均值为32.1的区间,分类标记为3。
查看清洗及处理后的数据表
到这里我们完成了对450个职位信息的字段清洗和数据提取工作。下面我们再来查看下数据表的维度,名称以及数据表中的数据。在下一篇文章中我们将使用这个数据表对数据分析职位的分布情况以及薪资的影响因素进行分析,并通过建模对薪资收入进行预测。
本篇文章我们对抓取到的职位信息进行了清洗和数据提取。数据清洗是一个苦逼的工作,但却是分析和建模过程中必不可少的一个步骤。经过清洗后我们就可以对职位数据进行分析和建模了,后面的文章中我们将从职位需求分布和薪资影响因素两个方面进行分析,并在最后对数据分析行业的薪资进行建模,对薪资分类和具体的薪资值进行预测。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在 “神经网络与卡尔曼滤波融合” 的理论基础上,Python 凭借其丰富的科学计算库(NumPy、FilterPy)、深度学习框架(PyTorch、T ...
2025-10-23在工业控制、自动驾驶、机器人导航、气象预测等领域,“状态估计” 是核心任务 —— 即从含噪声的观测数据中,精准推断系统的真 ...
2025-10-23在数据分析全流程中,“数据清洗” 恰似烹饪前的食材处理:若食材(数据)腐烂变质、混杂异物(脏数据),即便拥有精湛的烹饪技 ...
2025-10-23在人工智能领域,“大模型” 已成为近年来的热点标签:从参数超 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