excel实战小测第四
【项目背景】 本项目为某招聘网站部分招聘信息,要求对“数据分析师”岗位进行招聘需求分析,通过对城市、行业、学历要求、薪资待遇等不同方向进行相关性分析,加深对数据分析行业的了解。 结合企业真实招聘信息,可以帮助有意转向数据分析岗位的学生调整学习的方向,同时也为简历准备上做出针对性参考。 |
【数据操作】
step1、数据清洗
1)重复数据
一般情况下,一个数据有且仅有一个唯一ID,因此针对数据“职位ID”列删除重复项。
选定想要删除的列【职位ID】,菜单栏选择【数据】--【删除重复项】,弹框选项中选择【扩展选定区域】--【删除重复项】,选择指定列【岗位ID】--【删除重复项】。
2)缺失数据(无需操作)
清理重复值之后,还需要考虑对空值的处理,如果某一字段数据缺失>50%,则可以考虑删除,如果只是个别的缺失值,可以考虑删除,也可以进行填充(如分类变量数据可以使用人工手动补全,连续变量数据可以使用平均值进行替代)。
数据表中,选择想要查看的列,页面左下角查看【计数】,判断数据是否确实,其中可以看到【公司福利】、【工作地点】等数据都有缺失,但是不影响实际分析,因此这里无需操作修改。
Excel数据处理(缺失值/重复值/异常值/拆分) - 知乎 (zhihu.com)
3)一致化处理
1.薪资待遇
数据中,【薪资】多表示一个范围,不能直接用于数据分析,根据取薪资下限和薪资上限(拆分)(若为单边范围的薪资数据,如“6K以上”,则做上下限薪资相同处理),然后取薪资平均值用于后续数据分析。
【方式一:分列取平均值】
选中【薪资】列,菜单栏选择【数据】-【分列】,选择文件类型为【分隔符号】。
选择使用符号【-】进行切分,
数据填充
数据分割之后,可以发现数据中【15k以上】此类数据,没有分割,可以对【空白】数据进行【筛选】,对空白数据进行填充【=N148】(以实际内容为准),同时下拉,填充所有空白数据。
填充完毕之后,可以看到数据中有文本信息【k】,无法直接进行数学计算,使用【查找替换】将其删除。快捷键【Ctrl+F】,选择【替换】,查找内容为【k】,替换值为空即可。
同时还要考虑带有文本的数据,如【15k以上】,上步骤中已经把【k】去除,还需要同样方式把【以上】【以下】等内容进行替换删除。
数据全部替换之后,计算平均薪资。右侧添加一列【平均薪资】。使用公式或者函数计算品均值。
【方式二:使用函数取平均值】
* len:用于计算文本字符串的字符个数;len(text)
* Left:返回从文本字符串的左侧开始到指定个数的字符,可用于字符串截取前几个字符;left(hello,2),字符数量默认为1。
* right:返回文本字符串右侧开始到指定个数的字符,可用于字符串截取后几个字段;
* mid:返回文本字符串中指定位置开始的指定数目的字符。可用于中间截取。
* find:用于查找指定字符在字符串中的第一次出现的位置;find(“l”,”hello”)
根据薪资计算【薪资下限】,可以发现在第一个【k】之前的内容为下限,因此可以使用【find】函数,找出【k】所在的位置,使用【left】函数进行左侧字符串截取。
=LEFT(text,[num_chars])
=LEFT(P2,FIND("k",P2)-1)
结果中错误处,可以看到这里是【K】,使用替换功能,将其替换成【k】即可。
计算【薪资上限】,可以发现上限数值,在【-】和【k】之间,可以使用【mid】函数截取两者之间的数值。
=MID(text,start_num,num_chars)
=MID(P2,FIND("-",P2)+1,LEN(P2)-FIND("-",P2)-1)
通过筛选可以看到,【薪资上限】中也有不能现实的数值,查看发现,对于特殊数值,无法使用函数,这里直接等于【薪资下限】即可,下拉修改所有内容。
计算【平均薪资】,使用函数【average】。注意,抽取出来的文本型数字不能参与数值计算,需要将文本型数字转化成数值型数字。
=AVERAGE(Q2*1,R2*1)
4)异常值处理
【岗位名称】中可以发现有很多不用的名称,包括数据分析师、产品、测试等,因此需要对数据进行异常值处理。
本次我们重点分析【数据分析】,因此对数据进行筛选,使用关键字【数据分析】、【分析师】、【数据运营】对岗位进行判断。可以看出关键词【数据分析】可以甄别出大部分数据分析岗位,满足我们的分析需求。
* find:用于查找指定字符在字符串中的第一次出现的位置;find(“l”,”hello”)
* count:计算包含数字的单元格以及参数列表中数字的个数。
* if:判断是否满足某个条件,如果满足返回一个值,如果不满足则返回另外一个值。
对结果进行筛选,数据为“1”的则为我们要用到的【数据分析】岗位信息。
(1) 分析城市对于岗位数量的需求,结果(格式为:城市 岗位数)为 。
(2) 分析行业对于岗位的需求,结果(格式:企业领域 岗位数 示例:移动互联网,电子商务 115,这里企业领域不做切分操作)为 。
(3) 分析公司规模对于岗位的需求,结果(格式:公司规模 岗位数)为 。
(4) 分析城市对薪资(取平均值)的影响,结果(格式:城市 平均薪资,注意单位为k,下同)为 。
(5) 分析公司规模对于薪资(取平均值)的影响,结果(格式: 公司规模 平均薪资)为 。
(6) 分析学历对于薪资(取平均值)的影响,结果(格式:学历要求 平均薪资)为 。
(7) 分析工作经验对于薪资、岗位的影响,结果(格式:工作年限 平均薪资 岗位数)为 。
(8) 试分析给出数据分析岗位需求量较大的公司top6,结果(格式:公司简称 岗位数)为 。
(9) 现有一名本科、工作两年的择业人员,想要在北京转数据分析岗位,对岗位需求量分析给出建议投递简历的公司top5(岗位需求量降序),结果(格式:公司简称 岗位数)为 。
第二题 csv
网站用户注册分析
(15/15分)
数据集:
数据集.csv
考核条件如下:
(1) 读取数据,查看数据信息简要,"用户名"非空数据个数结果为
(3/3)分
(2) 进行数据缺失值查看,“注册日期”缺失值个数结果为
(3/3)分
(3) 编写程序/root/python/demo3.py,要求程序运行结果为每月用户注册数,结果为 。(结果格式:注册日期 注册数量 ,参考步骤说明)
(3/3)分
(4) 编写程序/root/python/demo4.py,要求以月作为行索引,年份作为列索引,对比不同年份中每月的注册用户数,结果为 。(参考步骤说明)
(6/6)分
数据透视表
数据透视表,一篇就够了 - 知乎 (zhihu.com)
计算类别数量(例题)
相关文章:

excel实战小测第四
【项目背景】 本项目为某招聘网站部分招聘信息,要求对“数据分析师”岗位进行招聘需求分析,通过对城市、行业、学历要求、薪资待遇等不同方向进行相关性分析,加深对数据分析行业的了解。 结合企业真实招聘信息,可以帮助有意转向数…...

什么是SpringBoot自动配置
概述: 现在的Java面试基本都会问到你知道什么是Springboot的自动配置。为什么面试官要问这样的问题,主要是在于看你有没有对Springboot的原理有没有深入的了解,有没有看过Springboot的源码,这是区别普通程序员与高级程序员最好的…...

基于IC5000烧录器使用winIDEA烧写+调试程序(S32K324的软件烧写与调试)
目录 一、iSYSTEM简介二、如何使用iSYSTEM winIDEA烧写调试程序2.1 打开winIDEA:2.2 新建一个Workspace;2.3 硬件配置:2.4 选择CPU芯片型号:2.5 加载烧写文件:2.6 开始烧录程序:2.7 程序调试Debug:2.7.1 运行程序&…...

新手开始学【网络安全】要怎么入门?
前言:网络安全如何从零开始学习,少走弯路? 目录: 一,怎么入门? 1、Web 安全相关概念(2 周)2、熟悉渗透相关工具(3 周)3、渗透实战操作(5 周&…...

Linux指令 快捷键
热键 上一次我们说到了linux的基本指令,这次我们先说一下热键 TAB TAB键在linux中有什么作用呢?? 在Linux中,假设我们想要输入的指令忘记了,我们可以TAB两下,帮我们补全命令或者假如命令太多࿰…...
Testing and fault tolerence考试要点
文章目录 ATPGFault modelScanFunctional testMemory BISTLogic BISTboundary scanATEIddq testingFault tolerant designRisk analysis ATPG ATPG工作流程fault collapsing的原则 Fault model 有哪些fault model以及他们的工作原理 Scan Scan寄存器结构Scan Chain的连接方…...

记一次springboot项目漏洞挖掘
前言 前段时间的比赛将该cms作为了题目考察,这个cms的洞也被大佬们吃的差不多了,自己也就借此机会来浅浅测试下这个cms残余漏洞,并记录下这一整个流程,谨以此记给小白师傅们分享下思路,有错误的地方还望大佬们请以指正…...

R语言 | 数据框
目录 一、认识数据框 7.1 建立第一个数据框 7.2 验证与设定数据框的列名和行名 二、认识数据框的结构 三、获取数据框内容 3.1 一般获取 3.2 特殊字符$ 3.3 再看取得的数据 四、使用rbind()函数增加数据框的行数据 五、使用cbind()函数增加数据框的列数据 5.1 使用$符号…...

基于SpringBoot的招生管理系统的设计与实现
背景 本次设计任务是要设计一个招生管理系统,通过这个系统能够满足管理员和学生的招生公告管理功能。系统的主要功能包括首页、个人中心、学生管理、专业信息管理、专业报名管理、录取通知管理、系统管理等功能。 管理员可以根据系统给定的账号进行登录࿰…...

Oracle Profile详解
Profile的作用主要表现在三个方面 1、密码策略 2、对用户所能使用的资源进行管理 3、profile存放在数据字典里面,默认有一个名字为default的profile set linesize 160 set pagesize 30 select resource_name,resource_type,limit from dba_profiles where profile‘…...
r语言tidyverse教程:5 字符串处理stringr
文章目录 R语言系列: 编程基础💎循环语句💎向量、矩阵和数组💎列表、数据帧排序函数💎apply系列函数tidyverse:readr💎tibble💎tidyr💎dplyr💎stringr stri…...

知识变现海哥:知识变现的本质就是卖
知识变现的本质就是卖,而有人买的本质,就是你解决了某方面的需求。 好的成交,从来都是相互的, 只靠一边主动推销来维系是远远不够的。 绝对不是靠忽悠,而是靠实力。 先讲一个故事。 19世纪时,一个年轻的…...
jdbc和druid和mybatis之间的关系
第一种方式 jdbc整合了:加载数据库驱动,创建连接,写原生语句,执行,关闭这些东西. 第二种方式 mybatis对jdbc进行封装,他允许你通过配置的形式,配置数据库参数,并且允许你通过xml来写动态sql语句.if:test让你可以把sql变得灵活起来.并且还能将你的查询结果直接映射到你想要的…...

云原生Istio案例实战
目录 1 Istio监控功能1.1 prometheus和grafana1.2 访问prometheus1.3 访问grafana 2 项目案例:bookinfo2.1 理解什么是bookinfo2.2 sidecar自动注入到微服务2.3 启动bookinfo2.4 通过ingress方式访问2.5 通过istio的ingressgateway访问2.5.1 确定 Ingress 的 IP 和端…...

解读赛力斯年报:华为智选车的B面
作者 | Amy 编辑 | 德新 赛力斯,华为智选车的B面。 2021年,赛力斯SF5进入华为渠道销售,华为自此开启了智选车模式。到年末,双方更是推出AITO品牌。AITO凭借M5/M7等车型在2022年拿下了超过7.5万台的销量,成为增长最快的…...

互联网内卷严重?你咋不看看其他行业呢?无非是三十晚上无月亮,大家都一样
一千个人眼中有一千个哈姆雷特,互联网行业就像一座围城,城外的人想进来,城内的人要么卷要么躺要么润 真实的感受你可以现在约几个面试体验一下。内卷到什么程度? 产品和运营岗,业务经验不完全对口简历都过不了&am…...
CompletableFuture异步任务编排使用
CompletableFuture异步任务编排使用 runAsync 和 supplyAsyncallOf 和 anyOfjoin 和 getwhenComplete 和 whenCompleteAsync 和 exceptionallyhandle 和 handleAsync 串行编排runAsync().thenRunAsync()supplyAsync().thenAcceptAsync((res) ->{})supplyAsync().thenApplyAs…...
Scala的高级用法
文章目录 1. 默认参数值1.1 方法默认参数1.2 类默认参数 2. 特质 (Traits)2.1 子类型2.2 扩展特征,当做接口来使用 3.元组3.1 定义与取值3.2 元组用于模式匹配3.3 用于for循环 4 高阶函数4.1 常见的高阶函数map4.2 简化涨薪策略代码 5.嵌套方法6.多参数列表…...
【31.在排序数组中查找元素的第一个和最后一个位置】
给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 示例 1:…...

如何构建“Buy Me a Coffee”DeFi dApp
🥸 本教程来自官网:https://docs.alchemy.com/docs。对原文部分内容进行了修改。教程中所有实例经过本人实践,代码可见:https://github.com/ChuXiaoYi/web3Study 区块链技术令人惊叹,因为它使我们能够使用代码和软件编…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...

在 Spring Boot 中使用 JSP
jsp? 好多年没用了。重新整一下 还费了点时间,记录一下。 项目结构: pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

数据结构:递归的种类(Types of Recursion)
目录 尾递归(Tail Recursion) 什么是 Loop(循环)? 复杂度分析 头递归(Head Recursion) 树形递归(Tree Recursion) 线性递归(Linear Recursion)…...
Spring Boot + MyBatis 集成支付宝支付流程
Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例(电脑网站支付) 1. 添加依赖 <!…...