【问题标题】:Weighted Median If in ExcelExcel中的加权中位数If
【发布时间】:2014-06-26 20:34:36
【问题描述】:

我有一个 Excel 数据选项卡,其中包含以下列: A:县名 B:酒店名称 C: 酒店客房数 D:酒店建成年份

在我的分析选项卡中,我有以下列: A:县名 B:酒店房间的中位年龄

我试图找出每个县的“酒店房间”的平均年龄。用 Excel 的说法,我正在尝试做一个加权 MEDIAN IF - 如果县名匹配按房间数量加权,则取中位数 - 所以如果县里有三家酒店,一家建于 1900 年,有 100 间客房,一家建于1975年有50个房间,2000年有200个房间,返回值应该是2000。非常感谢任何帮助!!!

【问题讨论】:

    标签: arrays excel excel-formula conditional-operator median


    【解决方案1】:

    您需要一些辅助列:

    按以下顺序准备它们:

    E 列用于跟踪这家酒店和同一县内其他较早建造的酒店有多少房间:

    E2 = SUMIFS($C$2:$C$15,$A$2:$A$15,"="&A2,$D$2:$D$15,"<="&D2)
    

    I 和 J 列存储这个县有多少房间,以及其中的一半

    J2 = SUMIFS($C$2:$C$15,$A$2:$A$15,"="&I2)
    K2 = J2/2
    

    F 列显示 E 到 K 的距离,中间值出现在通过中间点的第一家酒店。

    F2 = E2-VLOOKUP(A2,$I$2:$K$4,3,0)
    

    L 列找到超过中点的最小正值:

    {L2 = MIN(IF(($A$2:$A$15=I2)*($F$2:$F$15>=0),$F$2:$F$15,""))}
    

    最后是 M 列,从 I 和 L 对照 G=A&F 查找年份:

    M2 = INDEX($D$2:$D$15,MATCH(I2&L2,$G$2:$G$15,0))
    

    【讨论】:

      猜你喜欢
      • 2011-10-17
      • 1970-01-01
      • 1970-01-01
      • 2020-06-07
      • 1970-01-01
      • 1970-01-01
      • 2022-11-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多