【python数据分析】对python开发岗位需求进行分析可视化

news/2024/11/7 12:18:44/

前言

大家早好、午好、晚好吖 ❤ ~欢迎光临本文章

什么是数据分析

明确目的–获得数据(爬虫,现有,公开的数据)–数据预处理——数据可视化——结论

准备

环境使用:

在开始写我们的代码之前,我们要准备好运行代码的程序

  • Anaconda (python3.9)

    –> 识别我们写的代码

开发工具:

  • jupyter notebook

    –> 代码编辑功能敲代码的工具

不会安装的可以文末名片+我获取哦 😎

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

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:continueelse:counts[word] = counts.get(word,0) + 1


尾语 💝

好了,今天的分享就差不多到这里了!

完整代码、更多资源、疑惑解答直接点击下方名片自取即可。

对下一篇大家想看什么,可在评论区留言哦!看到我会更新哒(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇👇


http://www.ppmy.cn/news/67992.html

相关文章

MySQL基本操作入门

MySQL是一种流行的关系型数据库管理系统,被广泛用于Web应用程序的开发中。本文将介绍MySQL基本操作,包括如何连接到MySQL服务器、创建数据库、创建表格、插入数据、查询数据和删除数据。 连接到MySQL服务器 要连接到MySQL服务器,您需要使用…

B站C语言学习,颠覆谭浩强C语言,可能是最好的C语言视频 【自用笔记】

文章目录 数据类型字符,整型,浮点型sizeof 展示字节大小 变量 常量变量变量:全局变量 /局部变量变量的使用变量的作用域和生命周期 常量const修饰的常变量#define定义的标识符常量枚举常量 数据类型字符,整型,浮点型si…

React路由

SPA的理解 单页Web应用(single page web application,SPA)。 整个应用只有 一个完整的页面 。 点击页面中的链接 不会刷新 页面,只会做页面的 局部更新。 数据都需要通过ajax请求获取, 并在前端异步展现。 核心思想是“单页面&am…

14JS05——流程控制-分支

目标: 1、流程控制 2、顺序流程控制 3、分支流程控制if语句 4、三元表达式 5、分支流程控制switch语句 一、流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的。很多时候我们要通过控制代码 的执行顺序来实现我们要完成的…

软件测试全流程

软件测试全流程 一、制定测试策略二、制定测试方案三、编辑测试用例四、执行测试用例五、输出问题单六、回归测试七、测试文件归档 一、制定测试策略 1、测试目的测试范围 2、用什么测试方法工具(例如功能测试用黑盒测试) 3、测试优先级(功能…

FISCO BCOS v3.3.0发布,新增块内分片技术,单链性能突破10万TPS

FISCO BCOS开源社区一贯秉承开源、开放、联合共建的原则,致力于链接社区力量将FISCO BCOS打造成更加完美的区块链底层平台。 作为FISCO BCOS开源社区重要的发起者和推动者,微众区块链持续参与开源生态共建。在社区通力协作下,FISCO BCOS v3.…

医院三级质控信息化支撑工具之一

建立组织,完善管理制度 新华社北京3月23日电 近日,中共中央办公厅、国务院办公厅印发了《关于进一步完善医疗卫生服务体系的意见》,并发出通知,要求各地区各部门结合实际认真贯彻落实。(原文地址:中共中央办公厅 国务院办公厅印发《关于进一步…

01.LLaMA

文章目录 前言导读摘要 预备知识语言模型ChatGPT性能暴涨的原因(涌现)GPT-1Transformer 背景介绍模型精讲数据集及处理Common CrawlC4GithubWikipediaGutenberg and Books3ArXivStack Exchange小结 关键TrickPre-normalizationSwiGLURotary Embeddings 实…