excel隔行取数求和/均值

问题描述

如图有好多组数据,需要求每组数据对应位置的平均值

解决方法

bash 复制代码
=SUM(IF(MOD(ROW(C$2:C$81), 8) = MOD(ROW(C2), 8), C$2:C$81, 0))/10

然后下拉右拉扩充即可,其中需要根据自身需要修改一些数据

bash 复制代码
=SUM(IF(MOD(ROW(起始列$起始行:结束列$结束行), 每隔几行) = MOD(ROW(起始位置), 每隔几行), 起始列$起始行:结束列$结束行, 0))/组数

方法解释

bash 复制代码
ROW(单元格)
ROW(起始列$起始行:结束列$结束行)

得到的是单元格对应的行数或是多个行数

因此列是多少无所谓,重要的是起始行与结束行确定数据范围,并使用$固定数字,防止拉伸数据时变动。比如本案例中,第一行为题目,因此真正数据从第二行开始,到第81行结束,一共10组数据,每组数据有8行

bash 复制代码
MOD(数据, 数字)

该作用为求余数,因为本案例中数据都是每隔8行取值求和/平均,因此可以采用这种根据行数计算余数的方法。

其返回的就是数据/数字的余数,数据可以是一个或多个数

bash 复制代码
MOD(ROW(C$2:C$81), 8) = MOD(ROW(C2), 8)

前一个MOD将所有行数对8求余数,得到的是这样的循环

后者对数据的初始行取余数,得到2,加上等号判断后,则将所有余数为2的位置标记为True,即取值,False位置不取值,从而实现隔行取数。当然,由于C2没有固定,因此在下拉时也会递增,从而实现对应位置的隔行取数

bash 复制代码
IF(logical_test, [value_if_true], [value_if_false])

函数的解释已经大体说明了含义,logical_test为条件判断语句,如果是true,则取第二参数的数,如果是false,则取第三个参数的数。

此处,我们将该列的所有数放在了第二个参数上,第三个参数设置为0,即为,true时取第二参数的数,false时取0

由于logical_test中放进去的是一列数,因此他也要相对应得对每列进行判断取数,对应第二参数得每行

bash 复制代码
SUM(数据)/组数

最后就是求和/平均了,SUM将放进去的数据求和,最后除以组数就是平均数了

总结

比较难以理解的就是IF中的判断取数以及需要实现下拉右拉时也自动更新相关数据的实现

相关推荐
小小测试开发12 小时前
OpenAI 模型攻克离散几何 80 年难题:Erdős 单位距离猜想被 AI 证明
人工智能·算法·机器学习
moonsims12 小时前
从“传感器融合”升级为“多机器人约束融合系统”-Factor Graph 多约束融合
人工智能·算法
Dfreedom.12 小时前
模型剪枝完全指南:从理论到实践,打造高效深度学习模型
人工智能·算法·机器学习·剪枝·模型加速
几司12 小时前
OpenISP 模块拆解 · 第11讲:非局部均值降噪 (NLM)
人工智能·算法·均值算法·isp
MicroTech202512 小时前
突破算力瓶颈,MLGO微算法科技筑牢量子测控与经典混合计算技术根基
科技·算法·量子计算
QQ129584550413 小时前
FERP50 - Excel以存储过程方式访问数据仓库
数据仓库·spark·excel
夏日听雨眠13 小时前
数据结构(堆排序,基数排序)
数据结构·算法
什仙13 小时前
Ansys Maxwell 默认求解器选择
人工智能·笔记·算法·基础·ansys·maxwell
weixin_3077791313 小时前
基于Vosk与CTranslate2的实时语音识别翻译系统 —— 完整C++实现详解
人工智能·算法·自动化·语音识别·原型模式
akarinnnn13 小时前
深入理解内存函数:原理、应用与优化
c语言·网络·数据结构·算法