Excel : 计算组内平均值

Excel : calculating average within a group

我正在使用 excel 2016。我有一些非结构化数据,如屏幕截图所示。我想按邮政编码对行进行分组,然后计算每个邮政编码中所有值的平均值。我是 excel 的新手。是否有一个函数或一组函数可以做到这一点?

鉴于您的 table 数据,要确定 zip avg price/acre 您可以进行加权平均。

  • 对于每个邮编,将总销售价格除以总面积

我把数据改成了Table以便能够使用结构化引用;但如果您愿意,可以将其更改为常规寻址。

加权平均公式:

 =SUMIF([ZIP],[@ZIP],[price])/SUMIF([ZIP],[@ZIP],[acres])

请注意,如果您计算每个邮政编码的 price/acre 平均值,您将计算 Avg Price/Acre/Sale ,而不是 Avg Price/Acre。对于多次销售的邮编,差异可能很大

=AVERAGEIF([ZIP],[@ZIP],[Price/Acre])

如果您只想显示 zip 和平均值 price/acre,您可以使用 Pivot Table:

  • 拖动 zip => 行区域
  • 使用公式 =Sum(price)/Sum(acres) 创建一个 Calculated Field 并将其拖到值区域

当然,如果您想要平均 price/acre/sale,请将 Price/Acre 拖到值区域,然后选择按平均值汇总。