Python统计透视表中的所有布尔值
有人知道如何计算透视表中的所有布尔值(包括假值)吗Python统计透视表中的所有布尔值,python,pandas,pycharm,Python,Pandas,Pycharm,有人知道如何计算透视表中的所有布尔值(包括假值)吗 通过\u考试是一列布尔值 这段代码只对真正的值执行任务,这很好: table = pd.pivot_table(df,index=["student","semester"], values=["passed_exam"],aggfunc=np.sum) 但是我还需要一个列来计算所有布尔值 提前谢谢你 我想你需要最后一次整形: 对表格求反,做同样的操作,添加两个值?非常感谢!可以不重复a和b吗?我的意思是第一行有a,第二行空白?并且总是得到一
通过\u考试
是一列布尔值
这段代码只对真正的值执行任务,这很好:
table = pd.pivot_table(df,index=["student","semester"], values=["passed_exam"],aggfunc=np.sum)
但是我还需要一个列来计算所有布尔值
提前谢谢你 我想你需要最后一次整形:
对表格求反,做同样的操作,添加两个值?非常感谢!可以不重复a和b吗?我的意思是第一行有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