数据分析案例-某公司员工数据信息可视化(文末送书)

🤵♂️ 个人主页:@艾派森的个人主页
✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+
目录
1.项目背景
2.数据集介绍
3.技术工具
4.导入数据
5.数据可视化
6.总结
文末推荐与福利
1.项目背景
在当今数字化时代,企业数据的收集和分析已经成为企业成功的关键因素之一。员工数据作为企业数据的重要组成部分,对于企业的人力资源管理、战略决策等方面都具有重要的意义。然而,如何有效地整合、分析和利用员工数据,一直是企业面临的挑战。
员工数据包含了员工的基本信息、工作表现、职业发展等方面,这些数据可以揭示员工的特点、行为和趋势。通过对员工数据的分析和挖掘,企业可以更好地了解员工的需求和期望,优化招聘和培训计划,提高员工的工作满意度和忠诚度。此外,员工数据还可以帮助企业识别潜在的劳动力风险和机会,为企业的战略发展提供数据支持。
然而,目前很多企业对于员工数据的利用还停留在传统的表格和报表形式,无法直观地呈现数据的特点和趋势。同时,由于数据来源的多样性,数据的准确性和完整性也难以保证。因此,需要一种更加有效的方法来整合、分析和利用员工数据。
数据可视化是一种将数据以图形、图像等形式呈现出来的方法,可以直观地展示数据的特点和趋势。通过数据可视化,企业可以更加清晰地了解员工情况,为人力资源决策提供有力的支持。同时,数据可视化还可以提高数据的透明度和可信度,加强管理层与员工之间的沟通和信任。
因此,本次实验旨在通过可视化工具和技术,分析和呈现公司员工数据信息。这种数据可视化对于公司管理和决策制定非常重要,可以帮助领导层更好地了解员工情况,优化流程,提高效率,和制定人力资源策略。
2.数据集介绍
该数据集来源于Kaggle,原始数据集中共有4653条,9个特征变量,各变量解释含义如下:
Education: 员工的教育资格,包括学位、机构和研究领域。
Joining Year: 每位员工加入公司的年份,表明他们的服务年限。
City: 每个员工所在或工作的地点或城市。
Payment Tier: 将员工分为不同的薪资等级。
Age: 每个员工的年龄,提供人口统计洞察。
Gender: 员工的性别认同,促进多样性分析。
Ever Benched: 表示员工是否曾经暂时没有分配过工作。
Experience in Current Domain: 员工在当前领域的经验年数。
Leave or Not: 目标栏。
3.技术工具
Python版本:3.9
代码编辑器:jupyter notebook
4.导入数据
首先导入数据可视化的第三方库,并加载数据集
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import plotly.express as px
import warnings
warnings.filterwarnings('ignore')df = pd.read_csv("Employee.csv")
df.head()

查看数据大小

查看数据基本信息

查看数据描述性统计


删除缺失值和重复值

5.数据可视化
# 员工教育分析
plt.figure(figsize=(10, 6))
sns.countplot(data=df, x='Education', palette='Set2')
plt.title('Education of Employees')
plt.show()

1971名员工拥有学士学位,说明大多数员工拥有学士学位。拥有硕士学位的员工637人,156名拥有博士学位的员工。
# 入职年限分布
sns.histplot(data=df, x='JoiningYear', bins=20, kde=True, color='skyblue')
plt.title('Distribution of Joining Years')
plt.show()

2017年是加入该公司的员工人数最多的一年,有662名新员工。紧随其后的是,2015年,有464名新员工加入公司。2013年,共有396名员工加入公司。新员工人数最少的一年是2018年,只有239名员工加入该公司。
# 员工城市分布
city_cnts = df['City'].value_counts()
px.pie(city_cnts, names=city_cnts.index, values=city_cnts.values, title='Employees Distribution by City', color_discrete_sequence=px.colors.sequential.Sunset, hole = 0.5)

大多数员工(42.4%)来自班加罗尔,其次是29%来自浦那,28.7%来自新德里
# 员工年龄分布
plt.figure(figsize=(10, 6))
sns.histplot(data=df, x='Age', bins=20, kde=True, color='coral')
plt.title('Employee Ages Distribution')
plt.show()

数据集中员工的最低年龄为22岁。25%的员工年龄在27岁以下或等于27岁。50%的员工年龄在30岁以下或等于30岁。75%的员工年龄在35岁以下或等于35岁。数据集中记录的员工最大年龄为41岁。
# 性别分布
sns.countplot(data=df, x='Gender', palette='muted')
plt.title('Gender Distribution')
plt.show()

组织中男性员工比女性员工多。
# 当前领域的经验分布
plt.figure(figsize=(10, 6))
sns.histplot(data=df, x='ExperienceInCurrentDomain', bins=20, kde=True, color='limegreen')
plt.title('Distribution of Experience in Current Domain')
plt.show()

大多数员工有2年工作经验(681名员工),其次是5年工作经验(470名员工)。随着工作年限的增加,员工人数逐渐减少。只有少数员工在当前领域拥有6年(8名员工)或7年(9名员工)的经验。
# 员工休假或未休假人数
sns.countplot(data=df, x='LeaveOrNot', palette='dark')
plt.title('Count of Employees Leave or Not')
plt.show()

大多数员工都没有休假。
# 支付等级分布
paymentTier_cnts = df['PaymentTier'].value_counts()
px.pie(city_cnts, names=paymentTier_cnts.index, values=paymentTier_cnts.values,title='Payment Tier Distribution', color_discrete_sequence=px.colors.sequential.Jet, hole = 0.5)

大多数员工(71.5%)处于第三支付层。20.6%的员工处于第二支付层,只有7.89%的员工处于第一支付层。
# 按性别划分的年龄分布
px.box(df, x='Gender', y='Age', color='Gender', title='Age Distribution by Gender' , color_discrete_sequence=px.colors.sequential.deep_r)

大多数男女员工的年龄在27到35岁之间。
# 按支付级别划分的当前领域经验
px.violin(df, x='PaymentTier', y='ExperienceInCurrentDomain', title='Experience in Current Domain by Payment Tier', color = 'PaymentTier', color_discrete_sequence=px.colors.sequential.RdBu_r )

第一个支付级别的大多数员工的工作经验在1年到4年之间。第二支付等级的大多数员工的工作经验在2年到4年之间。大多数第三支付等级的员工的工作经验在1年到4年之间。
# 城市性别分布
plt.figure(figsize=(12, 6))
sns.countplot(data=df, x='City', hue='Gender', palette='Set3')
plt.title('Gender Distribution by City')
plt.show()

班加罗尔和浦那的男性雇员更多。新德里有更多的女性雇员。
# 按性别划分的付款等级和年龄
px.box(df, x='PaymentTier', y='Age', color='Gender', title='Box Plot: Payment Tier and Age by Gender' , color_discrete_sequence=px.colors.sequential.RdBu)

在第一支付层,大多数男性员工的年龄在26 - 35岁之间,大多数女性员工的年龄在26 - 32岁之间。在第二支付层,大多数男性员工的年龄在26 - 34岁之间,大多数女性员工的年龄在27 - 35岁之间。在第三支付层,大多数男性员工的年龄在28 - 35岁之间,大多数女性员工的年龄在27 - 35岁之间。
6.总结
通过上面的可视化分析,我们得出了以下结论:
- 大多数员工拥有学士学位。
- 2017年和2015年是新员工数量最多的一年。
- 班加罗尔的员工集中度最高,其次是浦那和新德里。
- 员工的年龄范围相对较窄,大多数在27至35岁之间。
- 男性员工比女性员工多。
- 87%的部署率是积极的,但应该采取相应的策略来减少不部署。
- 大多数员工都有2年的工作经验。
- 员工的稳定性很明显,大多数人都没有休假
- 大多数员工都在第三支付层。
- 班加罗尔和浦那的男性员工更多,而新德里的女性员工更多。
- 拥有硕士和博士学位的员工的存在表明了教育的多样性。
通过本次实验,公司管理层获得了更清晰的员工数据信息,可以更好地制定战略决策,提高公司的绩效和竞争力。数据可视化是一个强大的工具,可以帮助公司更好地了解自身情况,优化资源分配,提高效率。
文末推荐与福利
《小团队管理:如何轻松带出1+1大于2的团队》免费包邮送出3本!

内容简介:
《小团队管理:如何轻松带出1 1>2的团队》从小团队管理的基本特征开始介绍,围绕小团队管理者在工作中实际遇到的管理事件,针对形形色色的小团队管理问题,逐条展开方法论述和实操讲解,旨在帮助读者轻松应对管理难题。
本书分为3篇,共12章。第1篇为基础篇,主要概述小团队管理的基本内容;第2篇为新手篇,主要讲解小团队管理的基础知识和实操案例,内容包括小团队的认知管理、目标管理、分工管理、沟通管理、绩效管理、阶梯管理、新人管理、离职管理、文化管理等;第3篇为进阶篇,主要针对空降管理者和创业管理者所面临的挑战,提出可落地执行的实用建议。编辑推荐:
更懂人、会用人、能管人、高效激励人、擅长培养人,实现从自己强到团队强的完美转型!
①全面:认知 目标 分工 沟通 绩效 阶梯 新人 离职 文化
②易懂:50 个核心公式,用简单的方式解释复杂的管理知识
③实用:50 个实用图表,随学随用,可直接落地
④案例:50 个场景案例详解,大幅提升管理能力
- 抽奖方式:评论区随机抽取3位小伙伴免费送出!
- 参与方式:关注博主、点赞、收藏、评论区评论“人生苦短,拒绝内卷!”(切记要点赞+收藏,否则抽奖无效,每个人最多评论三次!)
- 活动截止时间:2023-10-29 20:00:00
- 当当网购买链接:http://product.dangdang.com/29511382.html
京东购买链接:https://item.jd.com/13628437.html
名单公布时间:2023-10-29 21:00:00
相关文章:
数据分析案例-某公司员工数据信息可视化(文末送书)
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...
浅谈wheel滚轮事件
<divonWheel{(ee) > {// new WheelEvent(自定义,e) 获取 e[wheelDelta],e[deltaY] 判断滚轮方向var e new WheelEvent(syntheticWheel,ee)console.log(滚动触发事件, e,ee);console.log(滚动触发事件e.wheelDelta, e[wheelDelta],e[deltaY]);console.log(滚动触发事件e.…...
FTP服务器操作手册
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。FTP协议是File Transfer Protocol(文件传输协议),专门用来传输文件的协议。FTP服务器是企业里经常用到的服务器,今天就介绍一…...
Android使用Glide类加载服务器中的图片
Glide类用于从服务器中获取图片并加载进ImageView。 一、添加依赖 Glide为第三方框架,使用时需添加依赖: 在 Gradle Scripts / build.gradle(Module:app) / dependencies方法 中添加 implementation com.github.bumptech.glide:glide:4.12.0 添加后…...
【打靶】vulhub打靶复现系列3---Chronos
【打靶】vulhub打靶复现系列3---Chronos 一、主机探测 结合之前的方法(arp探测、ping检测),因为我们的靶机和攻击机都在第二层,所以打靶时候我们更依赖arp协议 tips:我在运行期间发现,netdiscover窗口没关…...
基于Java的新闻发布管理系统设计与实现(源码+lw+部署文档+讲解等)
文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding) 代码参考数据库参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者&am…...
CRM系统如何选型?
不少企业都想要使用CRM客户管理系统,但往往在CRM选型阶段就被折腾的五迷三道。CRM系统选型难在哪里?下面我们从企业用户和CRM厂商两方面进行分析,来说说关于CRM系统选型的那些事。 企业自身原因: 1、认知偏差 看到一个观点&…...
山东大学开发可解释深度学习算法 RetroExplainer,4 步识别有机物的逆合成路线
逆合成旨在找到一系列合适的反应物,以高效合成目标产物。这是解决有机合成路线的重要方法,也是有机合成路线设计的最简单、最基本的方法。 早期的逆合成研究多依赖编程,随后这一工作被 AI 接替。然而,现有的逆合成方法多关注单步逆…...
使用antv x6注册vue组件报错,TypeError: Object(...) is not a function (teleport.js:3:23)
typeError: Object(…) is not a function at …/…/…/node_modules/.pnpm/antvx6-vue-shape2.1.1_antvx62.15.2vue2.7.10/node_modules/antv/x6-vue-shape/es/teleport.js (teleport.js:3:23) 点击定位到报错的位置为 reactive应该是vue 2.7.*版本才有的 由于项目在index.ht…...
Python开发利器KeymouseGo,开源的就是香
1、介绍 在日常工作中,经常会遇到一些重复性的工作,不管是点击某个按钮、写文字,打印,还是复制粘贴拷贝资料之类的,需要进行大量的重复操作。按键精灵大家想必都听说过,传统的方式,可以下载个按…...
什么是 Node.js
目标 什么是 Node.js,有什么用,为何能独立执行 JS 代码,演示安装和执行 JS 文件内代码 讲解 Node.js 是一个独立的 JavaScript 运行环境,能独立执行 JS 代码,因为这个特点,它可以用来编写服务器后端的应用…...
08-flex布局
flex布局 1.定位布局- 定位流分类1.1.静态定位1.2.相对定位1.3.绝对定位1.4.固定定位1.5.粘滞定位1.6.z-index - 1.1.静态定位( Static positioning)- 1.2.什么是相对定位?( Relative positioning )- 相对定位注意点- 相对定位应…...
HTML5和HTML的区别
HTML5的概念分为广义和狭义两种。 狭义的概念HTML5是指HTML语言的第5个版本,而HTML是指5之前的版本。 广义的概念HTML5是指由HTML5、CSS3、JavaScript所组成的开发环境。而HTML是指HTML语言本身。 1、HTML5与HTML狭…...
【Amazon】跨AWS账号级别迁移弹性IP地址操作流程
文章目录 一、实验背景二、适用场景三、实验目标四、实验说明五、实验步骤1. 登录AWS控制台[源账户]2. 启用弹性 IP 地址转移[源账户]3. 接受转移的弹性 IP 地址[目标账户]4. <可选>禁止转移弹性IP地址[源账户] 六、结果验证七、注意事项八、附录1. 多弹性IP地址多AWS账号…...
2023-python pdf转换为PPT代码
from pdf2image import convert_from_path from pptx import Presentation from pptx.util import Inches import os# 用户输入PDF文件路径 pdf_file_path input("请输入PDF文件的路径:")# 提取文件名(不包括扩展名)作为PPT文件名…...
学会场景提问,让AI“小助手”为我所用
文章目录 一、故事叙述提问举例 二、产品描述提问举例 三、报告撰写提问举例 四、邮件和信件撰写提问举例 五、新间稿和公告撰写提问举例 六、学术论文和专业文章撰写提问举例 我们知道AI技术不仅能够自动生成文章和内容,还可以根据我们的需求提供创意灵感和解决问题…...
前端,CSS,背景颜色跟随轮播图片改变而改变(附源码)
首先看效果! 比如轮播图时红色,那么背景的底色也是红色,轮播图时黄色,背景的底色也是黄色,这就是根据轮播图的图片切换,而改变背景颜色随轮播图颜色一致 话不多说,直接上代码!非常简…...
对文件夹内的所有图像进行随机调整对比度和应用高斯滤波
import os import random from PIL import Image, ImageEnhance, ImageFilter# 输入和输出文件夹路径 input_folder rE:\深度学习数据集 output_folder rE:\深度学习数据集\对比度、高斯滤波# 确保输出文件夹存在,如果不存在则创建 if not os.path.exists(output_…...
ios上架上传构建版本的windows工具
ios上架的必要步骤,是将打包好的二进制ipa文件,上传到app store的构建版本里,苹果并没有提供上传构建版本的工具,这里我介绍下windows下上传构建版本的方案。 下面说下上传的基本步骤: 第一步,上传前要先…...
arcgis js api 4.x加载geoserver发布的地方坐标系(自定义坐标系)的wms服务
问题描述:之前研究过arcgis js api 4.x加载arcgis server 发布的地方坐标系的wms服务,后来研究出来能正常加载了,想了解的可以看我之前的博客。但是一直困于加载geoserver发布的地方坐标系的wms服务,一直都是用的WMSLayer这个调用…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...
手机平板能效生态设计指令EU 2023/1670标准解读
手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读,综合法规核心要求、最新修正及企业合规要点: 一、法规背景与目标 生效与强制时间 发布于2023年8月31日(OJ公报&…...
数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !
我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...
【WebSocket】SpringBoot项目中使用WebSocket
1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖,添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...
