岗位数据分析
分析背景
这是一个用数据说话的时代,也是一个依靠数据竞争的时代,日前生活各处都离不开数据随之数据信息日益增长,需要从数据中搜集、整理、分析,并依据数据做出行业研究、评估和预测为公司提升业绩等,所需职业就是数据分析师。在招聘网站有很多数据分析师的招聘信息,那接下就用数据分析可视化更加直观的分析数据分析师目前的薪资,学历等信息以及公司规模情况。
数据分析思维导图:
最终可视化展示(Power BI)
1.数据信息
数据来源:爬取招聘网站的招聘信息(数据截止20201213)
数据字段说明:
job_name:岗位名称
company_name:公司名称
providesalary:薪资
workarea:工作地点
updatedate:招聘发布时间
companytype:公司类型
companyind:公司行业
companysize:公司规模
education:学历
experience:工作经验
前期了解后就可以愉快的进行撸码数据分析了
2.正文开始
2.1导入需用到的库:
import pymysql
from sqlalchemy import create_engine
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
import numpy as np
#画图时显示中文
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
2.2连接数据库导入数据:
#建立数据库连接
conn = create_engine('mysql+pymysql://system:123456@localhost:3306/test',encoding='utf8')
#读取数据 忽律薪资为天数的信息
sql = "select job_name,company_name,providesalary,workarea,updatedate,companytype,companyind,companysize,education,experience from job_data where providesalary not like '%%天%%' and job_name like '%%数据分析%%'"
data = pd.read_sql(sql=sql,con=conn)
2.3数据处理
重复数据处理:
#查看重复数据
data.duplicated().sum()
#删除重复数据
data.drop_duplicates(inplace=True)
缺失值处理:
#查看缺失值
data.isnull().sum()
#查看缺失值具体行数 6947,7528
data[data.isnull().T.any()]
#将缺失值赋值并修改原数据
data.fillna('未填写',inplace=True)
数据字段分列:
#处理薪资字段
#增加薪资时间
data['amtdate'] = data['providesalary'].str.split('/').str[1]
#最小薪资
data['min_amt']=data['providesalary'].str.split('-').str[0]
#data['min_amt'].astype('float')
#最大薪资
data['max_amt'] = data['providesalary'].str.split('-').str[1].str.slice(0,4).str.split('万').str[0].str.split('千').str[0]
#城市
data['city'] = data['workarea'].str.split('-').str