关注最多:This question
我有一些看起来像这样的数据:
Student Class Course Date Instructor
Alex Intro to Philosophy 11/4/20 Jake
James Algorithms 11/5/20 Ashley/Jake
Mike Spanish I 11/7/20 Ashley
Steven Vector Calculus 11/5/20 Jake
Denise Intro to Philosophy 11/8/20 Jake
Carol Intro to Philosophy 11/8/20 Jake
如何计算如下所示的计数或枢轴,在给定日期的班级上,教员一次计数。
我想要得到这样的东西:
Jake Ashley
Intro to Philosophy 2 0
Algorithms 1 1
Spanish I 0 1
Vector Calculus 1 0
Total 4 2
答案 0 :(得分:0)
由于“讲师”是数据透视表的目标列(尽管我是错误地选择了“学生”,我还是这样做了),所以应该拆分并分解数据以便应用原始答案中提供的数据透视表。
自己的用户对评论提供的修改:
df.Instructor = df.Instructor.str.split('/')
df = df.explode('Instructor')
然后:
df.pivot_table(index='Class', columns='Instructor', values='Student', aggfunc=pd.Series.count).fillna(0).astype(int)
“学生”可能是数据框的任何其他列。