Как выбрать строки над определенным условием, группируя их по другому столбцу в Python?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как выбрать строки над определенным условием, группируя их по другому столбцу в Python?

Сообщение Anonymous »

У меня есть следующий кадр данных:
A B C
1 3 2
1 7 7
1 7 7
1 5 4
2 2 1
2 8 8
2 4 5
3 5 3
3 1 9
3 4 4

Я пытаюсь для каждой группы одинаковых значений в столбце A найти последнюю строку со значением в столбце B, равным значению в C, а затем вернуть строки до ПОСЛЕДНЯЯ строка, где B = C, включая саму строку. Таким образом, ожидаемый результат будет следующим:
A B C
1 3 2
1 7 7
1 7 7
2 2 1
2 8 8
3 5 3
3 1 9
3 4 4

Я попробовал приведенный ниже код, но он возвращает строки перед первой строкой, где B = C, а не перед последней.
mask = df['B'] == df['C']
df.loc[mask[::-1].groupby(df['A']).cummax()]


Подробнее здесь: https://stackoverflow.com/questions/759 ... olumn-in-p
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»