或关系求均值(函数虐心版)

最近醉心于Python的学习和分享,好久没有分享Excel相关的文章了。

熟悉我文章的朋友,都知道我特喜欢分享数组函数,也特喜欢分享那种很长的函数。

前几天有朋友问了我一个很好的问题,今天和大家分享一下。

一、一个条件求销售均值

我有一个销售金额列表,现在需要统计石原里美的销售数量均值,我们需要使用averageif函数。

公式:=AVERAGEIF(B2:B12,"石原里美",C2:C12)

Averageif(要判断的列,判断条件,要求均值的列)

下面有个图送给大家

二、或关系多条件求均值

还是这个表,我们需要求石原里美、裴秀智、李智恩的销售均值。

如何处理这个问题呢,如果知道数组函数但是不是特熟练的朋友很愿意犯这个错误来求解。

错误解法如下:

{=AVERAGEIF(B2:B12,{"石原里美";"裴秀智";"李智恩"},C2:C12)}

Averageif实现单条件求和,很多朋友以为将单条件替换为数组即可,这里有个错误认知,是什么呢?如何此时你选中三个单元格然后输入这个函数看一下是什么效果?

当我们在一个单元格输入数组函数的时候,只能显示数组函数第一个的结果,怎么让他显示全部的值呢?如果是分号间隔,需要上下选中连续的单元格,如果逗号间隔,需要左右选中连续的单元格。

所以此种方法无法直接实现多条件或关系求和!

如果才能正确得出我们想要的结果呢?

思路如下:

1、用If函数判断B列是否与目标文本一致,如果一致返回C列的值,反之返回空文本

2、用Average函数对上述结果进行求均值

公式:{=AVERAGE(IF(B2:B12={"石原里美","裴秀智","李智恩"},C2:C12,""))}

大括号不是人为输入的,输入函数后同时按住Ctrl+shift+enter可以自动生成

为什么这个数组函数可以呢?那我们来拆分一下这个函数

最外层Average不表,我们拆分一下IF函数

IF(B2:B12={"石原里美","裴秀智","李智恩"},C2:C12,"")

这个数组函数等于三个IF函数组合而成!

IF(B2:B12="石原里美",C2:C12,"")

IF(B2:B12="裴秀智",C2:C12,"")

IF(B2:B12="李智恩",C2:C12,"")

这个三个IF函数会生成三列数据,第一个IF函数如何B列为石原里美则返回对应销售额,反之返回空文本。

第二个、第三个同理。

那三个IF函数就生成了包含33个(原始数据11个)单元格的数据,并且满足条件是销售金额,反之为空文本。

Average函数不计算空文本,所以把符合条件的销售金额进行了求均值。

达到了我们的预期目的!

练习文档如下:你可以自己下载研究一下!

链接: https://pan.baidu.com/s/1mjTYkf2 密码: vw7b

总结:数组函数只是实现了虚拟数组构建,如果想要实现数组的应用,需要在生成虚拟数组后外面嵌套一个函数进行运算!

到这里还不是最终极的,终极的是如果原始数据不是石原里美,而是XX石原里美XX这种形式的呢?包含关系如何处理?

鉴于已经很烧脑了,明天再分享!

原文发布于微信公众号 - 阿凯的Excel(akexcel)

原文发表时间:2018-01-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据结构与算法

洛谷P4316 绿豆蛙的归宿(期望)

给出一个有向无环图,起点为1终点为N,每条边都有一个长度,并且从起点出发能够到达所有的点,所有的点也都能够到达终点。绿豆蛙从起点出发,走向终点。 到达每一个顶点...

964
来自专栏互联网开发者交流社区

SQL基础日期函数

1625
来自专栏PPV课数据科学社区

【学习】笨办法学R编程(四)

随着教程推进,基本的语法都接触得差不多了。当要解决某个具体问题时,只需要考虑用什么样的算法来整合运用这些函数和表达式。今天来解决Project ...

2814
来自专栏hrscy

如何在 Unity 2D 和 3D 中放大或缩小以及点击屏幕

在示例代码中,实现了放大或缩小和点击功能。在手机的图库中,缩放和平移/拖动图像时,它具有相同的行为。此示例代码对 unity2d 和 unity3d 对象都起作...

3123
来自专栏深度学习那些事儿

pytorch新手需要注意的隐晦操作Tensor,max,gather

先看官方的介绍: 如果input是一个n维的tensor,size为 (x0,x1…,xi−1,xi,xi+1,…,xn−1),dim为i,然后index必须...

1.4K8
来自专栏落影的专栏

iOS开发-OpenGLES进阶教程3

教程 OpenGLES入门教程1-Tutorial01-GLKit OpenGLES入门教程2-Tutorial02-shader入门 OpenGLES入门...

3627
来自专栏常用编程思想与算法

常用编程思想与算法

本文是在阅读Aditya Bhargava先生算法图解一书所做的总结,文中部分代码引用了原文的代码,在此感谢Aditya Bhargava先生所作出的这么简单的...

2031
来自专栏算法修养

POJ 1964&HDU 1505&HOJ 1644 City Game(最大0,1子矩阵和总结)

最大01子矩阵和,就是一个矩阵的元素不是0就是1,然后求最大的子矩阵,子矩阵里的元素都是相同的。 这个题目,三个oj有不同的要求,hoj的要求是5s,...

3294
来自专栏章鱼的慢慢技术路

Go指南练习_循环与函数

2212
来自专栏小樱的经验随笔

回溯算法入门及经典案例剖析(初学者必备宝典)

前言 基于有需必写的原则,并且当前这个目录下的文章数量为0(都是因为我懒QAQ),作为开局第一篇文章,为初学者的入门文章,自然要把该说明的东西说明清楚,于是。。...

4404

扫码关注云+社区

领取腾讯云代金券