>백엔드 개발 >파이썬 튜토리얼 >Pandas DataFrame에서 각 그룹의 첫 번째 행을 얻는 방법은 무엇입니까?

Pandas DataFrame에서 각 그룹의 첫 번째 행을 얻는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-10 15:06:02416검색

How to Get the First Row of Each Group in a Pandas DataFrame?

Pandas DataFrame에서 각 그룹의 첫 번째 행 가져오기

Pandas에서 그룹별 작업을 통해 다양한 카테고리에 걸쳐 효율적인 데이터 집계 및 조작이 가능합니다. . 그러나 각 그룹 내에서 특정 행을 검색하는 것은 어려울 수 있습니다. 이 문서에서는 pandas DataFrame을 그룹화할 때 각 그룹의 첫 번째 행을 검색하는 방법을 보여줍니다.

문제:

"id"라는 두 개의 열이 있는 DataFrame이 있습니다. 그리고 "가치". DataFrame을 "id", "value"로 그룹화하고 각 그룹의 첫 번째 행을 가져오고 싶습니다.

예상 결과:

id value
1 first
2 first
3 first
4 second
5 first
6 first
7 fourth

해결책:

각 그룹의 첫 번째 행을 검색하려면 다음을 사용할 수 있습니다. .first() 메소드. "id"를 그룹 키로 전달하면 .first()는 각 고유 "id" 그룹에 대해 null이 아닌 첫 번째 요소를 선택합니다.

df.groupby('id').first()

이렇게 하면 다음의 첫 번째 행과 함께 원하는 출력이 생성됩니다. 각 "id" 그룹이 표시됩니다.

식별자를 열로 가져오기:

필요한 경우 식별자를 열로 사용하면 .reset_index()를 사용할 수 있습니다.

df.groupby('id').first().reset_index()

이 결과는 다음과 같습니다.

id value
1 first
2 first
3 first
4 second
5 first
6 first
7 fourth

여러 행 검색:

각 그룹의 처음 n개 행을 검색하려면 다음을 사용할 수 있습니다. .head().

df.groupby('id').head(2).reset_index(drop=True)

이를 사용하면 각 그룹의 시작 부분에서 지정된 수의 행을 검색할 수 있습니다.

위 내용은 Pandas DataFrame에서 각 그룹의 첫 번째 행을 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.