当前位置: 首页 > news >正文

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两下,帮我们补全命令或者假如命令太多&#xff0…...

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的招生管理系统的设计与实现

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

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.多参数列表&#xf…...

【31.在排序数组中查找元素的第一个和最后一个位置】

给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 示例 1&#xff1a…...

如何构建“Buy Me a Coffee”DeFi dApp

🥸 本教程来自官网:https://docs.alchemy.com/docs。对原文部分内容进行了修改。教程中所有实例经过本人实践,代码可见:https://github.com/ChuXiaoYi/web3Study 区块链技术令人惊叹,因为它使我们能够使用代码和软件编…...

ssc377d修改flash分区大小

1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

图表类系列各种样式PPT模版分享

图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

Mysql中select查询语句的执行过程

目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...

排序算法总结(C++)

目录 一、稳定性二、排序算法选择、冒泡、插入排序归并排序随机快速排序堆排序基数排序计数排序 三、总结 一、稳定性 排序算法的稳定性是指:同样大小的样本 **(同样大小的数据)**在排序之后不会改变原始的相对次序。 稳定性对基础类型对象…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found"​, "n…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

消息队列系统设计与实践全解析

文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...