有人可以指导我汇总大熊猫数据吗?
我有一个庞大的文件,其中包含来自大约数千名不同的人和20多个不同地点的每个时间戳调查数据。每项调查都有四个级别的“原因”,我列为Driver1,Driver2(有4个)。然后有一个列来计算调查,每个问题都有几列。由于原始数据的每一行都是单独的调查,因此计数始终为1,分数可以是-1,0,1。
Date Location Person Driver1 Driver2 Surveys Question1
-----------------------------------------------------------------------------
4/30/2014 21:41 a123b xyz234 Quest Ion 1 -1
我的目标是:
这应该是每个位置以及每个人和每个驱动程序的每日(无时间戳)级别(4级)
Date Location Person Driver1 Driver2 Surveys Question1
-----------------------------------------------------------------------------
4/30/2014 a123b xyz234 Quest Ion 3 0.33
4/30/2014 a123b xyz234 Quest Bear 6 1
这将大大减少文件大小,但仍然可以提供详细数据。我想知道每个人每天为调查司机的表现,以便跟踪每月/每周的进度。
我认为它必须是这样的:
df2 = df.groupby['Date','Location','Person','Driver1','Driver2','Driver3','Driver4']
df2['Surveys'].sum()
df2['Question1'].mean()
答案 0 :(得分:1)
你关闭了。你需要围绕那个groupby的一些()
df2 = df.groupby(['Date','Location','Person','Driver1','Driver2','Driver3','Driver4'])
然后,如果您想要
,则将接下来的两行合并为一行df2.agg({'Surveys' : 'sum', 'Question1' : 'mean'})