Сгруппировать в пандах с условно - сложить и вычесть - PullRequest
0 голосов
/ 11 июля 2019

У меня есть фрейм данных с 4 столбцами «Identificação Única», «Nome», «Rubrica» и «Valor», и я хотел бы сгруппировать по столбцу «Identificação Única» e «Nome» и суммировать столбец «Valor», кроме когда Rubrica равен 240 или 245. Кроме того, я хочу, чтобы минус значение в столбце Valor всегда было равно Rubrica 352 и добавлено другое (то есть, отличное от «240», «245» и «352»)), и его результат будет сохранен. в новом столбце. И я хочу показать значение в этом столбце, которое больше, чем 10000. Код ниже: Таким образом, код правильно добавляет все рубрики, кроме 240 и 245. Но я не могу вычесть рубрику, когда она 352. Изображение кадра данных ниже ::

enter image description here

Код, который я пробовал, таков:

f0219_grouped = f0219[~f0219['Código Rubrica'].isin(['240','245'])].groupby(['Identificação Única', 'Nome'])['Valor'].sum()>10000 - f0219_grouped['Valor'] where f0219_grouped['Rubrica']==352`

И, когда я запускаю код, я получаю следующее сообщение об ошибке: "Файл" ", строка 1

f0219_grouped = f0219[~f0219['Código Rubrica'].isin(['240','245'])].groupby(['Identificação Única', 'Nome'])['Valor'].sum()>10000 - f0219_grouped['Valor'] where f0219_grouped['Rubrica']==352
                                                                                                                                                               ^

SyntaxError: неверный синтаксис`

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