условные суммы для совокупности панд

Я только недавно переключился с R на python, и у меня возникли некоторые проблемы с тем, чтобы снова привыкнуть к фреймам данных, в отличие от использования R data.table. Проблема, с которой я столкнулся, заключается в том, что я хотел бы взять список строк, проверить значение, а затем суммировать количество строк, разбитых пользователем. Итак, я хотел бы взять эти данные:

   A_id       B    C
1:   a1    "up"  100
2:   a2  "down"  102
3:   a3    "up"  100
3:   a3    "up"  250
4:   a4  "left"  100
5:   a5 "right"  102

И вернуться:

   A_id_grouped   sum_up   sum_down  ...  over_200_up
1:           a1        1          0  ...            0
2:           a2        0          1                 0
3:           a3        2          0  ...            1
4:           a4        0          0                 0
5:           a5        0          0  ...            0

Прежде чем я сделал это с помощью кода R (используя data.table)

>DT[ ,list(A_id_grouped, sum_up = sum(B == "up"),
+  sum_down = sum(B == "down"), 
+  ...,
+  over_200_up = sum(up == "up" & < 200), by=list(A)];

Однако все мои недавние попытки с Python провалились:

DT.agg({"D": [np.sum(DT[DT["B"]=="up"]),np.sum(DT[DT["B"]=="up"])], ...
    "C": np.sum(DT[(DT["B"]=="up") & (DT["C"]>200)])
    })

Заранее спасибо! это простой вопрос, но я нигде не смог его найти.

Ответы на вопрос(2)

Ваш ответ на вопрос