使用groupby计算Python布尔值
我有以下计划:使用groupby计算Python布尔值,python,pandas,pycharm,Python,Pandas,Pycharm,我有以下计划: df = pd.DataFrame({'student':['a'] * 4 + ['b'] * 6, 'semester':[1,1,2,2,1,1,2,2,2,2], 'passed_exam':[True, False] * 5}) print (df) passed_exam semester student 0 True 1 a
df = pd.DataFrame({'student':['a'] * 4 + ['b'] * 6,
'semester':[1,1,2,2,1,1,2,2,2,2],
'passed_exam':[True, False] * 5})
print (df)
passed_exam semester student
0 True 1 a
1 False 1 a
2 True 2 a
3 False 2 a
4 True 1 b
5 False 1 b
6 True 2 b
7 False 2 b
8 True 2 b
9 False 2 b
table = df.groupby(["student","semester","passed_exam"])
.size()
.unstack(fill_value=0)
.rename_axis(None, axis=1)
.reset_index()
print (table)
student semester False True
0 a 1 1 1
1 a 2 1 1
2 b 1 1 1
3 b 2 2 2
是否可以不在student列中重复值a和b?我希望在第一行中有一个,然后在第二行中为空..最后得到一个数据帧。。
谢谢大家! 您可以为
student
列的重复案例分配一个空字符串:
table.loc[table.student.duplicated(), "student"] = ""
table
太好了!!非常感谢。