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

Excel重新踩坑6:工作实战总结之根据筛选条件求平均成绩

一、前言:

  • 这个博客的实战场景:给了一组学生数据,这些数据中,有全市20个社区,1-9年级的学生各科成绩。要求按照各社区统计1-9年级的所有学生各科平均值。下面首先介绍会用到的一些函数,然后再简单说明实战过程。

二、项目实战过程中学到的一些函数和功能:有些学习了没有用到,也记录了下来。

1、sumif(区域1,条件,区域2)函数:

  • sumif(区域1,条件,区域2)函数中,区域1是条件对比时筛选的区域,条件是区域1中某个筛选项,区域2是求和区域,使用这个公式,会把区域1中与条件相同的行对应在区域2中的项累加起来。应用范例:a列是金额,b列是与a列对应的金额类型,就可以通过该函数,算出不同金额类型的金额之和。

2、SUBTOTAL(function_num, ref1, [ref2], …):

  • 可以通过筛选生成汇总结果。其中第一个参数是功能参数,SUBTOTAL函数支持11种函数,分别为Average(平均值)、Count(非空值单元格计数)、CountA(非空值单元格计数,包括字母)、Max(最大值)、Min(最小值)、Product(乘积)、Stdev(标准偏差值,忽略逻辑值和文本)、Stdevp(标准偏差值,包括逻辑值和文本作为数字参与计算)、Sum(求和)、Var(给定样本的方差,忽略逻辑值和文本)、Varp(给定样本总体的方差,包括逻辑值和文本作为数字参与计算)。SUBTOTAL函数是Excel中一个非常实用且强大的函数,它可以帮助用户轻松处理筛选和手动隐藏后的数据,提高工作效率和数据处理能力。但是要注意功能代码要给对,例如在一个包含10个数据的单元格区域中,假设初始总和为50。当隐藏其中3个数据后,使用代码“9”进行求和,结果仍为50;而使用代码“109”进行求和,结果则变为可见的7个数据的总和。

3、切片器:超级表的一种功能

  • 切片器的使用前提(结构化表格也叫做超级表):在插入选项中有一个叫“表格”的功能,他的作用是将数据区域转换为结构化表格,结构化表格的好处是
    1.向表格添加新行或列时,数据会自动纳入表格范围,相关公式、格式和筛选会自动应用到新数据。
    2.统一表格格式,便于整体修改格式。
    3.表格标题会自动出现筛选剪头,还能多列排序。
    4.通过“表格设计”添加汇总行,可以选择汇总方式(求和,求平均等)快速汇总数据,注意要修改汇总方式,要在创建了最后一行汇总行之后,点到最后一行对应表格上,然后出现下拉箭头,自己选择汇总方式。
  • 只有创建好超级表的前提下,选中超级表区域,才能在插入中使用切片器。

4、数据清洗问题:

  • 1.错误数据筛选清除:在这个过程中我发现错误项通过筛选工具显示不出来,出现公式报错筛选的化可以选择公式当中的公式审核去定位错误发生的位置。
    在这里插入图片描述
  • 2.文字数据筛选常用find定位,mid提取。FIND(find_text, within_text, [start_num]):返回的是要查找目标的位置,MID(text, start_num, num_chars),获取目标中一部分内容。

5、filter(区域,条件,否则):

  • 可以筛选生成数组,其中第一个参数作用是告诉函数你要从哪个区域筛选,第二个参数是说明你的筛选条件,多个条件的情况下and用*代替,or用+代替。最后一个参数是说如果筛选区域中没有满足筛选条件的时候就返回的结果。

二、实战过程:

  • 0、给了一组学生数据,这些数据中,有全市20个社区,1-9年级的学生各科成绩。要求按照各社区统计1-9年级的所有学生各科平均值,如下所示是原始数据表:
    在这里插入图片描述
  • 2、制作目标表格(确定要获取的数据格式和规范),如下所示,将所有年级按照9门课程设计表格,至于有的年级没有对应课程,可以不用管,目的是为了公式能够适用所有年级。
    在这里插入图片描述
  • 3、获取“数据清洗表”(数据规则化),通过FIND,定位文字位置,通过MID,获取对应内容,这样子就能够先把某些规则数据提取出来,首先让筛选项变成可以统一筛选的规则数据,如下:
    在这里插入图片描述
  • 4、思路一:结合“目标表格”,通过筛选函数快速筛选出需要的数组,然后对筛选出来的数组使用求平均值函数得到结果,如下,在水果社区对应的语文数据中可以使用函数:=AVERAGE(FILTER(数据清洗表!E$4:E 7042 , ( 数据清洗表 ! 7042,(数据清洗表! 7042,(数据清洗表!B 4 : 4: 4:B 7042 = 目标表格 ! 7042=目标表格! 7042=目标表格!B 4 ) ∗ ( 数据清洗表 ! 4)*(数据清洗表! 4)(数据清洗表!C 4 : 4: 4:C$7042=1),0)),其中FILTER(数据清洗表!E$4:E 7042 , ( 数据清洗表 ! 7042,(数据清洗表! 7042,(数据清洗表!B 4 : 4: 4:B 7042 = 目标表格 ! 7042=目标表格! 7042=目标表格!B 4 ) ∗ ( 数据清洗表 ! 4)*(数据清洗表! 4)(数据清洗表!C 4 : 4: 4:C$7042=1),0)函数的意思是在数据清洗表中获取语文成绩所在的E列数据,然后第一个筛选条件是数据清晰表中社区和目标表社区一致都是水果社区,并且是1年级的成绩,筛选出来,不满足删选条件的用0代替,这样就得到了一列满足以上两个条件的数据,然后用average函数求平均就好了。
    在这里插入图片描述
  • 5、思路二:通过subtotal动态求平均,然后手动筛选,一组一组的获取,但效率太慢了。
    在这里插入图片描述

相关文章:

Excel重新踩坑6:工作实战总结之根据筛选条件求平均成绩

一、前言: 这个博客的实战场景:给了一组学生数据,这些数据中,有全市20个社区,1-9年级的学生各科成绩。要求按照各社区统计1-9年级的所有学生各科平均值。下面首先介绍会用到的一些函数,然后再简单说明实战…...

使用 Java 和 FreeMarker 实现自动生成供货清单,动态生成 Word 文档,简化文档处理流程。

在上一篇博客中主要是使用SpringBootApache POI实现了BOM物料清单Excel表格导出,详见以下博客: Spring Boot Apache POI 实现 Exc()el 导出:BOM物料清单生成器(支持中文文件名、样式美化、数据合并&#…...

20250118拿掉荣品pro-rk3566开发板上Android13下在uboot和kernel启动阶段的Rockchip这个LOGO标识

20250118拿掉荣品pro-rk3566开发板上Android13下在uboot和kernel启动阶段的Rockchip这个LOGO标识 2025/1/18 15:12 缘起:做飞凌OK3588-C开发板/核心板【Linux R4】的时候,测试/生产要求没有开机LOGO【飞凌/Rockchip】 要求:黑屏或者中性界面。…...

《Hands_On_LLM》8.3: 检索增强生成-RAG技术概论

3.检索增强生成 (Retrieval-Augmented Generation (RAG)) LLM 的大规模应用很快导致人们向它们提问,并期望得到符合实际的答案。虽然这些模型可以正确回答一些问题,但它们也自信地回答了许多错误的问题。为了纠正这种行为,业界转而采用的主要…...

CSS中样式继承+优先级

继承属性和非继承属性 一、定义及分类 1、继承属性是指在父元素上设置了这些属性后,子元素会自动继承这些属性的值,除非子元素显式地设置了不同的值。 常见的继承属性: 字体 font 系列文本text-align text-ident line-height letter-spacing颜色 col…...

Vue进阶之旅:核心技术与页面应用实战(路由进阶)

文章目录 一、路由模块封装二、声明式导航(一)导航链接与高亮(二)声明式导航传参1. 查询参数传参2. 动态路由传参 三、路由重定向、404 与模式设置(一)路由重定向(二)路由 404&#…...

单片机存储器和C程序编译过程

1、 单片机存储器 只读存储器不是并列关系,是从ROM发展到FLASH的过程 RAM ROM 随机存储器 只读存储器 CPU直接存储和访问 只读可访问不可写 临时存数据,存的是CPU正在使用的数据 永久存数据,存的是操作系统启动程序或指令 断电易失 …...

Vue.js 动态设置表格最大高度的实现

概述 在现代 Web 开发中,响应式设计至关重要,尤其是在处理复杂的布局和数据表格时。表格通常会受到多种因素的影响,如分页、合计行或动态内容,这可能导致表格高度的变化。本文将介绍一个基于 Vue.js 的方法 setMaxHeight&#xf…...

Java测试开发平台搭建(九)前端

1. 搭建前端vue环境 Vue3 安装 | 菜鸟教程 2. 创建项目 1.进入ui vue ui 2. create项目 3. 成功之后添加插件: cli-plugin-router vue-cli-plugin-vuetify 4. 添加依赖 axios 5. 点击任务开始运行 如果报错: 修改vue.config.jsconst { defineConfig }…...

MySQL多表查询练习

1.找出销售部门中年纪最大的员工的姓名 mysql> select name,age from dept a ,emp_new b where a.dept1b.dept2 and dept_name销售order by age desc limit 1; ------------ | name | age | ------------ | 荣七 | 64 | ------------ 1 row in set (0.00 sec) 2.求财务…...

低代码运维与管理服务

文章目录 前言一、服务内容二、服务范围三、服务流程四、服务交付件五、责任矩阵六、验收标准 前言 随着云计算技术的发展,数字化转型是企业的必然选择,企业需要实现广泛的连接并走向开放,传统集成工具无法满足当前企业面临的数字化转型诉求…...

【机器学习:三十二、强化学习:理论与应用】

1. 强化学习概述 **强化学习(Reinforcement Learning, RL)**是一种机器学习方法,旨在通过试验与反馈的交互,使智能体(Agent)在动态环境中学习决策策略,以最大化累积奖励(Cumulative…...

解决wordpress媒体文件无法被搜索的问题

最近,我在wordpress上遇到了一个令人困扰的问题:我再也无法在 WordPress 的媒体库中搜索媒体文件了。之前,搜索媒体非常方便,但现在无论是图片还是其他文件,似乎都无法通过名称搜索到。对于我这样需要频繁使用图片的博主来说,这简直是个大麻烦。 问题源头 一开始,我怀…...

【2024年华为OD机试】(B卷,100分)- 增强的strstr (Java JS PythonC/C++)

一、问题描述 题目描述 C 语言有一个库函数 char *strstr(const char *haystack, const char *needle),用于在字符串 haystack 中查找第一次出现字符串 needle 的位置,如果未找到则返回 null。 现要求实现一个 strstr 的增强函数,可以使用…...

【前端】CSS学习笔记

目录 CSS的简介CSS的概念语法 CSS的引入方式内联样式(行内样式)内部样式外部样式(推荐) 选择器全局选择器元素选择器类选择器ID选择器合并选择器后代选择器子选择器相邻兄弟选择器通用兄弟选择器伪类选择器:link:visited:hover:ac…...

项目架构调整,新增sunrays-combinations模块

文章目录 1.介绍2.环境搭建1.sunrays-framework下新建sunrays-combinations模块2.删除src3.pom.xml4.查看是否交给sunrays-framework管理5.删除sunrays-common中module引用的common-core-starter6.sunrays-combinations统一管理子模块7.common-all-starter的父模块修改为sunray…...

linux网络编程11——线程池

1. 线程池 1.1 池化技术原理 池化技术 当一个资源或对象的创建或者销毁的开销较大时,可以使用池化技术来保持一定数量的创建好的对象以供随时取用,于是就有了池式结构。常见的池式结构包括线程池、内存池和连接池。 池化技术应用的前提条件主要包括三…...

MySQL - 主从同步

​​​​​​1.主从同步原理: MySQL 主从同步是一种数据库复制技术,它通过将主服务器上的数据更改复制到一个或多个从服务器,实现数据的自动同步。 主从同步的核心原理是将主服务器上的二进制日志复制到从服务器,并在从服务器上执…...

基于微信小程序的安心陪诊管理系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...

深入剖析iOS网络优化策略,提升App性能

一、引言 在当今移动互联网时代,iOS 应用的网络性能直接关系到用户体验。无论是加载速度缓慢、频繁的网络错误,还是高额的流量消耗,都可能导致用户流失。因此,iOS 网络优化成为开发者提升应用质量、增强用户满意度的关键环节。本文…...

【kafka】Golang实现分布式Masscan任务调度系统

要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

相机从app启动流程

一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开,首…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

AI,如何重构理解、匹配与决策?

AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式,然后找到相应的网卡(可以查看自己本机的网络连接) windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置,选择刚才配置的桥接模式 静态ip设置: 我用的ubuntu24桌…...

NPOI操作EXCEL文件 ——CAD C# 二次开发

缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中,可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中,必须做到: 🔍 追踪每一条 SQL 的生命周期(从入口到数据库执行)&#…...