首页 > 解决方案 > 单元格中具有多个值的表格的计数/透视

问题描述

我有一些看起来像这样的数据:

Class                    Instructor
Intro to Philosophy      Jake
Algorithms               Ashley/Jake
Spanish I                Ashley
Vector Calculus          Jake
Intro to Philosophy      Jake

我怎样才能得到如下所示的计数或枢轴,其中将 Ashley 和 Jake 都教授课程的实例正确添加到计数中?一个教练的例子是微不足道的,但在同一个单元中的一个班级有两个或更多的例子让我绊倒了。

我想得到这样的东西:

                         Jake        Ashley
Intro to Philosophy         2             0
Algorithms                  1             1
Spanish I                   0             1
Vector Calculus             1             0
Total                       4             2

标签: pythonpython-3.xpandasdataframe

解决方案


您可以使用.str.get_dummies拆分和二值化Instructor字段。然后你可以分组Class

ret = (df['Instructor'].str.get_dummies('/')
     .groupby(df['Class']).sum()
)
ret.loc['Total'] = ret.sum()

输出:

                     Ashley  Jake
Class                            
Algorithms                1     1
Intro to Philosophy       0     2
Spanish I                 1     0
Vector Calculus           0     1
Total                     2     4

推荐阅读