偶素晓盆友 发表于 2021-11-25 21:18:00

迷迪恩

基础知识分享与巩固,可供新手查阅。


MEDIAN
名 词:中位数,中位线
形容词:中间的
在EXCEL中,有一个MEDIAN函数,用于计算中值。
语法<div align="left">MEDIAN 函数语法具有下列参数:
如果参数集合中包含偶数个数字,MEDIAN 将返回位于中间的两个数的平均值。
逻辑值和直接键入到参数列表中代表数字的文本被计算在内。
如果参数为错误值或为不能转换为数字的文本,将会导致错误。
如图所示

就可以用MEDIAN(0,X,A)来表示。
<font style="color:rgb(30, 30, 30)">




















重虫 发表于 2021-12-3 00:43:58

总结:
   各位朋友晚上好,因为题目较为容易,可能很多大佬都没有答题,我在这里感谢几位大佬的参与,特别是爱上李白爱上伤跟奇文说大佬完整的回答了三题,现在,我就三题进行逐一的分析。希望可以更好的帮助到新学习median的朋友们。
一、第一题,预设
=(D2%>=5+(C2<"主")*3)*MEDIAN((6-(C2<"主"))*D2%,50,150)*2

第一题各位大佬的答案都差不多,可以参考大家的。首先(D2%>=5+(C2<"主")*3)这一部分,这一部分是判断是否符合奖励要求,如果不是大于等于,则返回0,则没有奖励。接着是MEDIAN((6-(C2<"主"))*D2%,50,150)*2是这一部分,按照最低100,最高300,用MEDIAN函数来取中间值,如果是低于100,则取100,如果是高于300,则取300,如果是中间值,就取中间值。应是较为容易的。
二、第二题,预设
=MEDIAN(SUM(C$2:D2*(B$2:B2&INT(C$2:C2)=B2&INT(C2))*{-1,1})-5/24,D2-C2,)*2400




   第二题爱上李白爱上伤跟奇文说大佬的都差不多,可以参考。
   对于这种跟某一固定值来做差再求中位数的问题我们可以根据上面2个图来加以理解。
   1.首先是第一种,如果前面部分没有5那么多,那么与5做差肯定是负数,那么负数,0,跟正值的中位数就是0.
   继续增加数值,刚好到5,那么做差就是0,0,正数,返回0,说明总体还是小于等于5的。
   再接下来再增加数值,那么与5只差就大于0了,此时0,正数,正数,就返回了多出的部分。
   接下来再增加数值,此时增加的数值就小于多于5的部分了,这个时候0,较小的正数,多于5的部分,就返回了新增的数值了。
   2.第二种是第二部分加上去大于5了,此时多于5的部分与0,新增的数值之间就会返回多余5的部分了,接下来再新增数值就会变成第一种情况了。
   综合来说还是较为容易理解的。
三、第三题,预设
=MEDIAN(,D2,SUMIFS(D:D,C:C,C2,B:B,B2)-SUM((B3:B32=B2)*(C3:C32=C2)*(D2*D3:D32>0)*D3:D32))

    第三题爱上李白爱上伤朋友的容易理解,但稍显长了点,奇文说大佬的公式就与预设一样,可以参考。
   我在这里对此简要分析分析。
   分情况讨论:
   1.若左侧单元格为正数,那么我们可以先求出至此单元格上面的所有正数之和
    怎么求呢?就是所有正数之和减去下方单元格的所有正数之和
    接着就是跟所有负数之和做比较,如果是正数,返回较为小的整数,如果是负数,说明抵消完了,返回0    其实SUMIFS(D:D,C:C,C2,B:B,B2)-SUM((B3:B32=B2)*(C3:C32=C2)*(D2*D3:D32>0)*D3:D32)这一部分公式由
    2部分组成
    第一个部分是:SUMIFS(D:D,C:C,C2,B:B,B2,D:D,">0")
    第二个部分是:SUM((B3:B32=B2)*(C3:C32=C2)*(D2*D3:D32>0)*D3:D32)
    第三部分是SUMIFS(D:D,C:C,C2,B:B,B2,D:D,"<0")
    其中1,3合并就是SUMIFS(D:D,C:C,C2,B:B,B2)
   2.若左侧单元格为负数,那么我们的求法就跟上面的原理是一模一样的。
在这里,我要再推荐一下丢丢表格大佬的倒算法,更加容易理解
=MEDIAN(SUMIFS(D:D,B:B,B2,C:C,C2)-SUMIFS(E3:E69,B3:B69,B2,C3:C69,C2),D2,)

我在这里简要的跟大家分析一下计算原理,也是非常简单的。
首先,大家要明白一个原理,就是抵消是自上而下去抵消的,这对于理解这个公式很关键。
SUMIFS(D:D,B:B,B2,C:C,C2)
这一部分,我们直接求出最终抵消的是正值还是负值
那么如果是正值,那么上方的负值都是0,
如果是负值,那么上方的正值都是0.
关键在于如果是正值,那么上方的正值如何去取值。
我们举个例子
例如一个人最终抵消金额是100元,此时最下方的单元格的正数是80元,说明什么?
说明上方的正数和抵消后还有剩余,根本用不到80这一部分来抵消,所以80保留。
再上一个正数单元格是18的话,那么100减去80后还有20,那么说明也不用18来抵消,上面抵消后还有2剩余
如果上一个正数单元格是22的话,那么说明抵消已经抵消到22这里来了,抵消了2
那么就返回20
再上方的单元格已经抵消完了,所有正数就返回了0.
那么负数也是这个道理。
总的来说也是很容易理解的

教叟 发表于 2021-12-5 14:16:54

支持一下,能力有限。。。
第一题:=(D2%>=8-3*(C2>"主"))*MEDIAN(D2*(9+3^(C2>"主"))%,100,300)
第二题:=MEDIAN(SUM(C$2:D2*{-1,1}*(B$2:B2&INT(C$2:C2)=B2&INT(C2)))-5/24,D2-C2,)*2400
第三题:=MEDIAN(SUM(D$2:D2*(B$2:B2&C$2:C2=B2&C2))+SUMIFS(D3:D32,D3:D32,TEXT(D2,"<;>")&0,B3:B32,B2,C3:C32,C2),D2,)

阳林燊 发表于 2021-12-6 19:46:46

=(D2%>=5+(C2="员工")*3)*MEDIAN(D2*((C2="主管")*2+10)%,100,300)

发表于 2021-12-19 07:32:54

你再检查一下呗~

吃货不挑食 发表于 2021-12-22 12:26:30

第一题
=(D2%>=8-3*(C2="主管"))*MEDIAN(10,D2%*1.2^(C2="主管"),30)*10
繁体版EXCEL好像不能简为(C2>"主")这种写法

柴柴鸭 发表于 2021-12-28 04:56:35

改这样算取巧吗?
=MEDIAN((D2%>={5;8})*D2%*{12;10}*(C2=C$2:C$3),300)

半岛未凉 发表于 2022-2-15 06:17:24

第一题:(D2%>=5+(C2="员工")*3)*MEDIAN(50,150,D2*(6-(C2="员工"))%)*2
第二题:MEDIAN(,D2-C2,SUM((B$2:B2=B2)*(C$2:C2>=INT(C2))*(D$2:D2-C$2:C2))-5/24)*2400
第三题:MEDIAN(,D2,SUMIFS(D:D,B:B,B2,C:C,C2)-SUM((B3:B32&C3:C32=B2&C2)*D3:D32*(D3:D32*D2>0)))

大嘴猴找抽 发表于 2022-2-17 23:13:45

虽然看不懂,但不妨我点赞
页: [1]
查看完整版本: 迷迪恩