如何显示剩余而不是总熊猫?

时间:2017-10-12 16:31:39

标签: python pandas

这可以用来绘制总数,但是可以抓住其余的吗?

data = pd.read_excel('C:\\Users\\username\\Desktop\\Pandas\\SANS.xlsx')
data2 = data.groupby(['Department']).count()

C:\ Users \ dbeiler \ Desktop \ Pandas> python PythonApplication1.py

   Completion Department Email
0          62      AQPSD   165
1          68        ASD   147
2           8         CO    37
3         141      ECARS   242
4          60         ED   171
5          19         EO    69
6          53        ISD   141
7          85        MLD   181
8          73       MSCD   158
9          35        OIS    94
10         34         RD    78
11         39        TTD   103
例如,代替AQPSD 62,105,我喜欢62,103 第一列是部门名称(如图所示),显示结果的第二列是员工总数(根据他们的电子邮件和计算电子邮件总数),第三列是显示完成列(计算总数)完成培训的员工,基于他们的部门

这是xlsx文档的样子(但有1500行)

部门电子邮件完成 (3个单独的列),我目前的熊猫线工作,我只是想得到剩余的,而不是总和

Department Email Completion
MSCD    email1  
EO      email2   Complete
MLD     email3   Complete
ISD     email4   Complete
MSCD    email5  
AQPSD   email6  
ASD     email7   Complete
EO      email8  
AQPSD   email9  
ED      email10 
ASD     email11  Complete
ECARS   email12 
MLD     email13  Complete
AQPSD   email14 
ASD     email15 
AQPSD   email16  Complete
MSCD    email17 

1 个答案:

答案 0 :(得分:1)

IIUC:

df.groupby('Department').count().eval('Remaining = Email - Completion', inplace=False)

输出:

            Email  Completion  Remaining
Department                              
AQPSD           4           1          3
ASD             3           2          1
ECARS           1           0          1
ED              1           0          1
EO              2           1          1
ISD             1           1          0
MLD             2           2          0
MSCD            3           0          3