優秀;計算每組內的平均值?

優秀;計算每組內的平均值?

考慮以下形式的玩具資料集

 A    B
ID values
 1    5
 1    4
 1    3
 2    2
 2    1
 2    2
 3    8
 3    9
 3    7

因此,存在 ID 為 1、2、3 的三組:我有興趣計算每組內的平均值,並得到以下結果

A       B
ID      averaged
1       6
2       2.5
3       12

因此組的數量(唯一 ID)會很大,每個組內的資料數量也會很大。有什麼高效率的計算方法嗎?謝謝

答案1

在此輸入影像描述

怎麼運作的:

  • 在儲存格中輸入此陣列 (CSE) 公式J11

    {=IFERROR(INDEX($H$11:$H$24, MATCH(0,COUNTIF($J$10:J10, $H$11:$H$24), 0)),"")}
    

注意完成公式Ctrl+Shift+Enter並向下填充。

  • 單元格中的公式K11

    =IFERROR(AVERAGEIF(H$11:H$24,$J11,I$11:I$24),"")

根據需要調整公式中的儲存格引用。

答案2

使用資料透視表:

將 ID 放入 Rows 中,將 Values 放入 Values 中,然後更改為平均值:

在此輸入影像描述


使用動態陣列公式(目前僅適用於 Office 365 Insider)

在 D2 中輸入:

=UNIQUE(A2:A10)

在E2中:

=AVERAGEIFS(B:B,A:A,D2#)

Excel 會自動向下溢位值:

在此輸入影像描述

相關內容