基于键列的平均列

时间:2015-05-21 19:51:49

标签: python excel csv

我正在尝试根据列E, F, G ...中的哪个键对A列中的值进行平均。

我有一个有效的excel公式,我通过调整this post得到它:=AVERAGEIF(A:A,0,E:E)。但是,可能有n个键(最多100000个)和m列值(最多100个)

我的问题是,为每个变体键入该公式是不合逻辑的。 有没有更好的方法来做到这一点;以便它考虑到不同的组和列?

注意

  • 前7行是垃圾(它们包含有关文件的信息)
  • 数据是CSV格式,我只使用Excel打开它
  • 我目前正在考虑修改this脚本,但因为我不熟悉python所以可能需要一些时间

示例
列A是组,列E是要平均的值。 F列包含输出平均值(这有点乱,因为它没有显示平均值的组,但它们只是按升序排列,即:0, 1, 2
enter image description here

1 个答案:

答案 0 :(得分:1)

如果我理解正确,我会使用数据透视表来汇总您的数据。您可以按列A进行分组,然后获取其余列的方法。

在功能区界面上,单击"插入"并选择" Pivot Table"。然后,系统会提示您选择数据并设置位置。

之后,您应该会在右侧看到一个窗口,询问字段。将“列A”字段拖到“行标签”列表中,然后将要平均值的列拖到值列表中。您可能需要将值字段设置从默认总和更改为平均值,这是您想要的。

https://support.office.com/en-AU/Article/Create-a-PivotTable-to-analyze-worksheet-data-a9a84538-bfe9-40a9-a8e9-f99134456576