如何在交叉表熊猫中获得总计?

我有一个如下所示的 df,我想使用下面的代码将其转换为交叉表,


g= list('M'*75)+list('F'*75)

c =list('B'*51)+list('T'*24)+list('B'*49)+list('T'*26)

df=pd.DataFrame({'Gender':g,'City':c})

tbl=pd.crosstab(df['City'],df['Gender'])

交叉表:


Gender   F   M

City          

B       49  51

T       26  24

如何获取交叉表结果的总和或总值。即 49+51+26+24


到目前为止我用过这个,


tbl.sum().sum()

预期 O/P:


150

即使我得到了所需的结果,我想知道我是否需要在sum这里使用两个链函数来解决这个问题?


慕标5832272
浏览 140回答 1
1回答

呼啦一阵风

我认为不是,您可以将 DataFrame 转换为 numpy 数组并numpy.sum在没有轴的情况下调用,因此sum所有值都为标量:print (tbl.values.sum())150print (np.sum(tbl.values))150
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python