我有一个数据集,其中每个类别中的值的数量不同。我希望excel自动对一个类别中的值进行分组并计算平均值。例如,见下文:
示例数据集的屏幕截图
正如您所见,X1有三个值,而X2只有一个值而X3有三个值。我希望excel返回每个类别的平均值,如" Average"列。
答案 0 :(得分:0)
间接功能可以帮助...... 如果您知道第1列中的下一个标签,则可以执行此操作...
假设类别为A列,X1为行2
范围(“C1”)=AVERAGE(INDIRECT("B"&ROW()&":B"&MATCH("X2",A:A)-1))
范围(“C2”)=AVERAGE(INDIRECT("B"&ROW()&":B"&MATCH("X3",A:A)-1))
为了你的最后...
范围(“C3”)=AVERAGE(INDIRECT("B7:B"&COUNTA(B:B)))
答案 1 :(得分:0)
如果您可以在类别列之前使用帮助列,则可以使用以下内容:
以下是使用的公式:
帮助列将根据类别对行进行编号,并在每次更改类别时增加编号。平均列使用averageif公式,该公式使用编号作为标准。
您可以进一步格式化辅助列,使其不可见。
答案 2 :(得分:0)
如@tigeravatar所述,fill in the gaps如补充中所述,您将拥有更容易使用的数据。例如,只需应用小计(在Category
中的每次更改,使用函数Average
,将小计添加到:Value
)。
或者,应用AVERAGEIF。