Python 在中执行条件groupby计数后显示列的零值
我有一个数据帧,如下所述: 我使用以下代码来获得Python 在中执行条件groupby计数后显示列的零值,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,我有一个数据帧,如下所述: 我使用以下代码来获得列A中所有项目的已解决的计数: resolved=df[df['B']=='resolved'].groupby('A',as_index=False)['B'].size() 对于未解析的,类似地: unresolved=df[df['B']=='unresolved'].groupby('A',as_index=False)['B'].size() 对于未解析,SRVCAM-AM BI数据列B中没有未解析值。因此,生成的数据帧将不包含它 对于
列A
中所有项目的已解决的计数:
resolved=df[df['B']=='resolved'].groupby('A',as_index=False)['B'].size()
对于未解析的,类似地:
unresolved=df[df['B']=='unresolved'].groupby('A',as_index=False)['B'].size()
对于未解析
,SRVCAM-AM BI数据
列B
中没有未解析
值。因此,生成的数据帧将不包含它
对于未解决的获得的结果如下:
工作队列计数
SRVCAM-AM BI报告管理1
但我希望得到如下结果:
工作队列计数
SRVCAM-AM BI报告管理员1
SRVCAM-AM BI数据0
您可以比较列B
和聚合sum
-True
s是类似1
s的过程:
resolved = (df['B'] == 'resolved').groupby(df['A'], as_index=False).sum().astype(int)
如果希望所有列按B
排列,请使用:
@timgeb很高兴看到删除,这应该是对耶斯雷尔回答的评论:-)…谢谢你的回答。我使用了第一个解决方案,得到了正确的答案。
resolved = pd.crosstab(df['A'], df['B'])