Как получить Total в кросс-таблице панд? - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть 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 функции здесь для этой проблемы?

1 Ответ

0 голосов
/ 29 ноября 2018

Думаю, нет, вы можете преобразовать DataFrame в массив numpy и вызвать numpy.sum без оси, поэтому sum все значения в скалярном виде:

print (tbl.values.sum())
150

print (np.sum(tbl.values))
150
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...