Как получить сумму данных с указанными условиями? - PullRequest
1 голос
/ 09 марта 2020

у меня есть следующие заголовки данных: Инструмент ClosedVolume NetRevenue TradePnL

В моих данных о сделках я делаю несколько сделок одного и того же инструмента, которые привели к разным TradePnL.

Я хочу суммировать или если возможно, повторите все различные инструменты в моем фрейме данных.

Например, я хотел бы получить все торговые данные моего Alibaba, которые дают положительный TradePnL, что мне делать?

    sum(df['TradePnL'] ) #should give me my tradePnL of all my trades

    df[df['Instrument'] == "Alibaba"] #this will give me all instruments data with Alibaba

1 Ответ

1 голос
/ 09 марта 2020

просто объедините условия с двоичным кодом и

df[(df['Instrument'] == "Alibaba") & (df['TradePnL'] > 0)]

Я думаю ...

или более вероятно

df[df['TradePnL'] > 0].groupby(['Instrument']).agg("sum")

выберите где PNL> 0, затем группируем по инструментам и, наконец, получаем сумму положительных pnls

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