如何通过索引来平均多个值对之间的差异

并感谢您的帮助! 没有帮手列/行,我试图find病人第一次和最后一次访问之间LVEDi的平均差异。

例如,你可以用手工处理:

(diff for patient a + diff for pt b + diff for pt c)/3 = ((55-45) + (40-31) + (25-31))/3 = (10 + 9 + (-6))/3 = 13/3 = 4.333 

我确信答案涉及到一个数组函数的索引,但我不能开始如何解决它!

任何帮助?

谢谢!

  A | B | C | D | E 01 Patient ID | Date | First-Last | LVEDi | LOTS of similar cols 02 a | 3/3/03 | LAST | 55 03 a | 1/1/01 | FIRST | 45 04 a | 2/2/02 | | 65 05 b | | | 06 b | 3/2/16 | LAST | 40 07 b | | | 08 b | | | 09 b | 2/1/12 | FIRST | 31 10 c | 1/7/14 | LAST | 25 11 c | | | 12 c | 2/2/03 | FIRST | 31 13 c | 2/2/08 | | 46 

您可以在数组中使用* as和AND标准,所以在MATCHsearch实例,两个条件相乘的实例都是TRUE (即1 )。 其余的只是填写你的计算:

 {=((INDEX(D2:D13,MATCH(1,(A2:A13="a")*(C2:C13="LAST"),0))-INDEX(D2:D13,MATCH(1,(A2:A13="a")*(C2:C13="FIRST"),0)))+(INDEX(D2:D13,MATCH(1,(A2:A13="b")*(C2:C13="LAST"),0))-INDEX(D2:D13,MATCH(1,(A2:A13="b")*(C2:C13="FIRST"),0)))+(INDEX(D2:D13,MATCH(1,(A2:A13="c")*(C2:C13="LAST"),0))-INDEX(D2:D13,MATCH(1,(A2:A13="c")*(C2:C13="FIRST"),0))))/3} 

并记住使用CTRL + SHIFT + ENTER来input数组。

find一个稍微不详细的方法:

 =SUM(SUMIFS(D:D,C:C,"LAST",A:A,{"a","b","c"})-SUMIFS(D:D,C:C,"FIRST",A:A,{"a","b","c"}))/3 

在这里输入图像说明


编辑1

基于卢卡斯的评论:

 =(SUMIF(C:C,"LAST",D:D)-SUMIF(C:C,"FIRST",D:D))/COUNTIF(C:C,"LAST") 

在这里输入图像说明