通过在Excel / python中对行进行分组来评估平均值

时间:2017-10-22 11:42:02

标签: python excel csv

我有一个csv文件,如下所示(这只是一个最小的例子;我的实际文件包含数千行):

Main     Submain    Date         Counter
A        A-0        2017-06-09   10
C        C-0        2017-06-09   18
B        B-0        2017-06-09   20
A        A-1        2017-06-09   12
B        B-0        2017-06-30    5

我想要做的是当两行或多行具有相同的主和日期时,我想评估平均值和(可选创建一个新的csv文件),其中包含此信息,如跟随一个(对应于前面的最小例子)。

Main    Date         Counter
A       2017-06-09   11
C       2017-06-09   18
B       2017-06-09   20
B       2017-06-30    5

我会更感兴趣的是在Excel中这样做(因为我觉得它更容易实现),但python也可以。

2 个答案:

答案 0 :(得分:2)

您可以根据数据创建数据透视表,并按日期查看平均值

enter image description here

删除小计并重复标题以调整格式

enter image description here

enter image description here

答案 1 :(得分:1)

如果您还想在Python中尝试:

import pandas as pd
df1 = pd.read_csv("test.csv")
df2 = df1.groupby(["Main","Date"]).mean()
df2.to_csv("testgrouped.csv")

这将在" testgrouped.csv"中提供相同的结果。文件:

Main,Date,Counter
A,        2017-06-09,11
B,        2017-06-09,20
B,        2017-06-30,5
C,        2017-06-09,18