尝试执行动态范围的四分位数分析

问题描述

正在进行四分位数分析,以观察学生表现的趋势。到目前为止,我已经使用了以下公式来实现这一目标...但是所有这些公式都需要手动更新,并且自从我每月/每季度更新一次以来,我希望提高效率。我使用“ gpa”来表示数据范围,但是目前它是一个静态范围。

=quartile.exc(gpa,quartile number)建立垃圾

例如1Q=0-3.08,2Q=3.09-3.33,ETC

然后,我使用countifs将数据遍历四分位数,以确定与相关基线(其中c5和c6等是与上限的最大值相关联的值)进行比较后,落入每个四分位数的学生的数量和百分比每个四分位数

=countifs(gpa,">"&$c5,gpa,"<=",&$c6)

我最近更新为将数据存储在数据表中,以允许自动更新以前的静态范围(以gpa表示)。我还提出了其他条件来获取不同的数据片段(例如19财年,20财年等)。

当前挑战:我希望我的电子表格自动更新并返回上一季度和当年数据的运行结果。我创建了以下动态范围。

动态范围... =偏移量(header,counta(gpa column),0,-200,1)

我使用= average(动态范围)和= countif(动态范围,“ ”)测试了动态范围的有效性,并返回了正确的结果。通过手动选择最近200 gpa的细胞来检查平均功能,并根据需要将countif返回200。

我尝试将此动态范围插入上述countifs函数中以进行四分位数分析,并获得了#Value!...

= countifs(gpa,“>”&$ c5,gpa,“ ”)

我不明白为什么该功能会失败。此函数应返回gpa值介于两个数字(c5,c6)之间并且在动态范围内的次数

欢迎任何替代解决方案。不幸的是,我无法提供我的电子表格,因为它位于安全的网络中。

解决方法

在您的公式中,您的COUNTIF范围的大小并不完全相同。特别是gpadynamicrange的大小可能不同,因此会出现错误。

由于您如何定义dynamicRange,因此以下内容应等效:

=COUNTIFS(dynamicRange,">="&$C5,dynamicRange,"<="&$C6)

要复制原始公式(在重新定义dynamicRange的情况下,使其不总是完全包含在gpa中)

如果我了解您要正确执行的操作-

  • 返回gpa中所有数字的计数
    • =>中的值C5,并且
    • <=中的值C6,并且
    • 也包含在dynamicrange

然后以下公式应该起作用:

=SUM(ISNUMBER(MATCH(gpa,0))*(gpa>=$C5)*(gpa<=$C6))