python开发岗位需求分析,来看看它是什么一个情况吧

该篇文章展示了如何使用Python的pandas库进行数据清洗,包括处理重复值、缺失值,以及对地区、经验、学历等列的预处理。接着,利用pyecharts进行数据可视化,分析薪资区间、经验与学历要求,并探讨了地区招聘情况、经验与薪资、学历与薪资的关系。最后,文章提到了文本分析的一个示例,通过jieba分词统计公司福利关键词的频次。
摘要由CSDN通过智能技术生成

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

1.导入模块

import pandas as pd
from pyecharts.charts import *
from pyecharts import options as opts
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus']=False

2.导入数据

boss = pd.read_csv('招聘数据.csv', engine='python', encoding='utf-8')
boss

boss.shape

3.数据处理

3.1 查看重复值

boss.duplicated().sum()

3.2 查看缺失值

boss.isnull().sum()

3.3 缺失值处理

boss.dropna(subset=['薪资'], inplace=True)
boss.isnull().sum()

boss['公司福利'].fillna('无', inplace=True)
boss.isnull().sum()

3.4 地区列处理

boss['地区'].unique()

boss['地区'] = boss['地区'].apply(lambda x:x.split('-')[0])
boss['地区'].unique()

3.5 经验列处理

boss['经验'].unique()

3.6 学历列处理

boss['学历'].unique()

boss['学历'].replace('招若干人','学历不限', inplace=True)
boss['学历'].replace('招1人','学历不限', inplace=True)
boss['学历'].replace('招2人','学历不限', inplace=True)
boss['学历'].replace('招10人','学历不限', inplace=True)
boss['学历'].replace('招3人','学历不限', inplace=True)
boss['学历'].unique()

3.7 薪资列处理

boss['薪资'].unique()

4.数据分析(数据可视化)

4.1 薪资区间

import numpy as np
def shulie(first, end, step):
    x = []
    for i in np.arange(first, end, step):
        x.append(i)
    return x
list_1 = shulie(0,10,0.5)
boss['top'].plot.hist(bins=30,figsize=(20,8),edgecolor="black")
plt.xticks(list_1)
plt.xlabel('薪资区间')
plt.ylabel('万/月')
plt.show()

4.2 经验、学历要求情况

boss_1 = boss['经验'].value_counts()
x = boss_1.index.tolist()
y = boss_1.values.tolist()
boss_2 = boss['学历'].value_counts()
x_2 = boss_2.index.tolist()
y_2 = boss_2.values.tolist()
data_pair_1 = [list(z) for z in zip(x, y)]
data_pair_2 = [list(z) for z in zip(x_2, y_2)]

4.3 哪些地区招聘人员比较多

4.4 经验要求 和 薪资情况的情况 是不是薪资越高 经验要求越高


4.5 学历要求 和 薪资情况的情况 是不是薪资越高 学历要求越高

mean = boss.groupby('学历')['工资平均'].mean().sort_values()
x = mean.index.tolist()
y = mean.values.tolist()
c = (
    Bar()
    .add_xaxis(x)
    .add_yaxis(
        "学历",
        y,
        markpoint_opts=opts.MarkPointOpts(
            data=[opts.MarkPointItem(name="学历不限", coord=[x[1], y[1]], value=y[1])]
        )
    )
    .set_global_opts(title_opts=opts.TitleOpts(title="不同学历的平均薪资"))
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
)
c.render_notebook()

text = boss['公司福利'].dropna().to_string()
text

import jieba
words = jieba.lcut(text)
#通过遍历words的方式,统计出每个词出现的频次
counts = {}
for word in words:
    if len(word) == 1:
        continue
    else:
        counts[word] = counts.get(word,0) + 1


python资料、源码、教程: 点击此处跳转文末名片获取

尾语 💝

要成功,先发疯,下定决心往前冲!

学习是需要长期坚持的,一步一个脚印地走向未来!

未来的你一定会感谢今天学习的你。

—— 心灵鸡汤

本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝

👇问题解答 · 源码获取 · 技术交流 · 抱团学习请联系👇

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值