数据分析部分
目的
- 薪资水平(由于数据只是北京地区的数据分析岗位,所以只能代表北京这一块)
- 就业要求,看看各大公司对于数据分析这一岗位的具体要求,如学历、经验等
步骤
- 数据处理
- 可视化
- 建模
- 结论
#导入模块
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
#显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['font.family']='sans-serif'
plt.rcParams['axes.unicode_minus'] = False
data = pd.read_csv("job-Copy.csv")
数据初探
data.info()
data.head()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 300 entries, 0 to 299
Data columns (total 10 columns):
公司 300 non-null object
职位名 300 non-null object
薪资 300 non-null object
地址 300 non-null object
工作经验 300 non-null object
学历要求 300 non-null object
公司行业 300 non-null object
公司发展阶段 300 non-null object
公司规模 300 non-null object
招聘链接 300 non-null object
dtypes: object(10)
memory usage: 23.5+ KB
公司 | 职位名 | 薪资 | 地址 | 工作经验 | 学历要求 | 公司行业 | 公司发展阶段 | 公司规模 | 招聘链接 | |
---|---|---|---|---|---|---|---|---|---|---|
0 | 京东世纪贸易有限公司 | 数据分析 | 15-20K·14薪 | 北京 大兴区 次渠 | 3-5年 | 本科 | 互联网 | 已上市 | 10000人以上 | https://www.zhipin.com/gongsi/af6c91fc7c3e444d... |
1 | Boss直聘 | 数据分析师 | 8-13K | 北京 朝阳区 太阳宫 | 5-10年 | 本科 | 人力资源服务 | D轮及以上 | 1000-9999人 | https://www.zhipin.com/gongsi/fa2f92669c66eee3... |
2 | 朴新网校 | 数据分析师 | 16-24K | 北京 海淀区 苏州街 | 经验不限 | 本科 | 在线教育 | 已上市 | 10000人以上 | https://www.zhipin.com/gongsi/77b8a6b14f46879c... |
3 | 好未来 | 投放数据分析经理 | 20-40K·14薪 | 北京 海淀区 中关村 | 5-10年 | 本科 | 互联网 | 已上市 | 10000人以上 | https://www.zhipin.com/gongsi/efa878c051261c74... |
4 | 京东集团 | 数据分析岗 | 10-15K | 北京 大兴区 次渠 | 3-5年 | 本科 | 电子商务 | 已上市 | 10000人以上 | https://www.zhipin.com/gongsi/33e052361693f837... |
通过以上两条代码的输出结果,可以看出数据总共有300条,且无空值,所以不需要进行填充。但是,从具体内容上看,薪资和工作经验都是区间,且含有字符,不便于直接分析,因此,需要对这两个进一步处理。为了便捷,这里的思路是取中间值,如15-20k就取17.5。
data['薪资'].value_counts().plot()
<matplotlib.axes._subplots.AxesSubplot at 0x23b5f8fd8d0>
数据处理
- 重复值处理
- 表头处理
- 薪资处理:上下限,平均值
重复值处理
#重复值查询
data.duplicated()
0 False
1 False
2 False
3 False
4 False
5 False
6 False
7 False
8 False
9 False
10 False
11 False
12 False
13 False
14 False
15 False
16 False
17 False
18 False
19 False
20 False
21 False
22 False
23 False
24 False
25 False
26 False
27 False
28 False
29 False
...
270 False
271 False
272 False
273 False
274 False
275 False
276 False
277 False
278 False
279 False
280 False
281 False
282 False
283 False
284 False
285 False
286 False
287 False
288 False
289 False
290 False
291 False
292 False
293 False
294 False
295 False
296 False
297 False
298 False
299 False
Length: 300, dtype: bool
无重复值,如果有,可通过“drop_duplicates()”删除
表头处理
#将表头换成英文
data2 = data
colname = {
"公司":'company',"职位名":'position','薪资':'salary','地址':'address','工作经验':'workExp&#