Как выбрать первые N значений столбца, упорядоченных по ключам, в группирующей переменной в Pandas DataFramePython

Программы на Python
Ответить
Гость
 Как выбрать первые N значений столбца, упорядоченных по ключам, в группирующей переменной в Pandas DataFrame

Сообщение Гость »


У меня есть набор данных:

импортировать панд как pd данные = [ («А», «Х»), («А», «Х»), («А», «Й»), («А», «Я»), («Б», 1), («Б», 1), ('БИ 2), ('БИ 2), («Б», 3), («Б», 3), («С», «Л-7»), («С», «Л-9»), («С», «Л-9»), («Т», 2020), («Т», 2020), («Т», 2025) ] df = pd.DataFrame(data, columns=['ID', 'SEQ']) печать (дф) Я хочу создать идентификатор и SEQ группы ключей, чтобы выбрать первые две строки каждой отдельной SEQ в каждой группе идентификаторов

Например, идентификатор A имеет три разных ключа: «A X», «AY» и «A Z» в порядке набора данных: первые два ключа — «A X» и «AY», поэтому я должен выбрать первые две строки (если имеется) каждого из них

"A X", "A X", "A Y" почему? потому что «A Z» — это еще один ключ.

Я пробовал использовать функции groupby и head, но не смог найти способа добиться такого конкретного результата. Может ли кто-нибудь предложить решение или указать мне правильное направление?

(df .groupby(['ID','SEQ']) .head(2) ) но он перенастраивает исходный набор данных, и мне интересно, можете ли вы, ребята, помочь мне решить эту проблему с помощью изменения метода, поскольку это мой любимый стиль в пандах, заранее большое спасибо

Окончательный правильный результат


Изображение

Ответить

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

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

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

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

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