2024-09-29 19:00:41 发布
网友
有人知道如何计算透视表中的所有布尔值(包括假值)吗?在
passed_exam是一列布尔值。在
passed_exam
此代码只对真正的值执行任务,这很好:
table = pd.pivot_table(df,index=["student","semester"], values=["passed_exam"],aggfunc=np.sum)
但我还需要一个列来计算所有布尔值。在
提前谢谢你!在
我想你需要^{}和^{}一起,最后由^{}整形:
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
我想你需要^{} 和^{} 一起,最后由^{} 整形:
相关问题 更多 >
编程相关推荐