Сумма данных панд - PullRequest
       8

Сумма данных панд

0 голосов
/ 07 ноября 2019
>>> df
        A  B    C         D         E
0     one  A  foo  2.284039  0.802802
1     one  B  foo -1.463983  0.710178
2     two  C  foo -0.109677  2.930710
3   three  A  bar -0.356390 -1.972306
4     one  B  bar  1.425968 -0.285079
5     one  C  bar -0.657890 -0.555669
6     two  A  foo -0.168804 -1.930447
7   three  B  foo  0.488953 -2.512408
8     one  C  foo  0.251062 -0.465522
9     one  A  bar  0.427243 -0.845034
10    two  B  bar  0.629268 -0.892264
11  three  C  bar  0.171773  0.457268

Я хочу получить сумму столбца D и сумму столбца E, где столбец A - «один», а столбец C - «foo».

Я знаю, что это работает:

>>> x = df[df["A"] == "one"]
>>> y = x[x["C"] == "foo"]
>>> sum(y["D"])
1.0711178939632426
>>> sum(y["E"])
1.0474592505139344

Есть ли более компактное / элегантное решение?

1 Ответ

0 голосов
/ 07 ноября 2019

Используя панд, вы можете сделать:

df.groupby(['A','C']).sum()

Надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...