我试图制作一个数据透视表,以显示按月分隔的工作时间总和。我在制作数据透视表方面很成功,但是我仍然想找出如何在每个月进行分离。
这将被导出到一个excel文件中,该文件将提供给客户,以显示我们在x个月内做了多少工作,并表明我们正在努力 我们同意为他们提供多少x个小时的工作。
我正在使用python大熊猫来存放我的数据。这是我尝试获取数据透视表。
这是我当前正在使用的代码:
pivot = WorkTypeT.pivot_table(index=['Agreement','work_type'], values=['MONTH','hours_actual'], aggfunc=['sum'])
这是表格:
Agreement work_type hours_actual MONTH
0 Proactive Client Management 5.25 May
0 Proactive Managed Services 2.25 May
0 Proactive Onsite 15.50 May
0 Proactive Remote 9.25 May
0 Proactive Client Management 5.00 June
0 Proactive Managed Services 2.25 June
0 Proactive Onsite 15.00 June
0 Proactive Remote 9.25 June
输出当前的样子
sum
hours_actual
Agreement work_type
Proactive Client Management 10.25
Managed Services 4.50
Onsite 30.50
Remote 18.50
如何更改它,以便当前输出类似于
MONTH
hours_actual
May June
Agreement work_type
Proactive Client Management 5.25 5.00
Managed Services 2.25 2.25
Onsite 15.50 15.00
Remote 9.25 9.25
答案 0 :(得分:2)
pivot_table可以给出结果
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.pivot_table.html
pd.pivot_table(df, values='hours_actual', index=['Agreement', 'work_type'], columns=['MONTH'], aggfunc=np.sum, fill_value=0)
MONTH June May
Agreement work_type
Proactive Client Management 5.00 5.25
Managed Services 2.25 2.25
Onsite 15.00 15.50
Remote 9.25 9.25
答案 1 :(得分:1)
尝试一下:
pivot = pd.pivot_table(WorkTypeT, values='hours_actual', index=['Agreement', 'work_type'], columns=['MONTH'], aggfunc='sum')