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 区块链技术令人惊叹,因为它使我们能够使用代码和软件编…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
消防一体化安全管控平台:构建消防“一张图”和APP统一管理
在城市的某个角落,一场突如其来的火灾打破了平静。熊熊烈火迅速蔓延,滚滚浓烟弥漫开来,周围群众的生命财产安全受到严重威胁。就在这千钧一发之际,消防救援队伍迅速行动,而豪越科技消防一体化安全管控平台构建的消防“…...
嵌入式学习之系统编程(九)OSI模型、TCP/IP模型、UDP协议网络相关编程(6.3)
目录 一、网络编程--OSI模型 二、网络编程--TCP/IP模型 三、网络接口 四、UDP网络相关编程及主要函数 编辑编辑 UDP的特征 socke函数 bind函数 recvfrom函数(接收函数) sendto函数(发送函数) 五、网络编程之 UDP 用…...
