여러 열로 Pandas DataFrame에서 각 그룹의 첫 번째 행 가져오기
Pandas DataFrame에서는 첫 번째 행을 검색해야 하는 경우가 많습니다. 특정 열을 기준으로 DataFrame을 그룹화한 후 각 그룹의 행. 이 작업은 pandas의 내장 메서드를 사용하여 효율적으로 수행할 수 있습니다.
이를 달성하려면 .first() 메서드를 사용하여 각 그룹에 대한 첫 번째(null이 아닌) 요소를 얻을 수 있습니다. first()의 구문은 다음과 같습니다.
df.groupby('group_columns').first()
귀하의 예에서는 'id' 및 'value' 열을 기준으로 DataFrame을 그룹화하고 각 그룹의 첫 번째 행을 가져오려고 합니다. 다음 코드를 사용할 수 있습니다.
df.groupby(['id', 'value']).first()
다음 결과가 생성됩니다.
id | value |
---|---|
1 | first |
2 | first |
3 | first |
4 | second |
5 | first |
6 | first |
7 | fourth |
결과 DataFrame의 열로 'id'를 사용하려는 경우 다음을 수행할 수 있습니다. 아래와 같이 Reset_index()를 사용하여 인덱스를 재설정합니다.
df.groupby(['id', 'value']).first().reset_index()
이 작업의 출력은 다음과 같습니다. be:
id | value |
---|---|
1 | first |
2 | first |
3 | first |
4 | second |
5 | first |
6 | first |
7 | fourth |
또한 각 그룹 내에서 처음 n개 행을 검색하려면 first() 대신 .head() 메서드를 사용할 수 있습니다. 예를 들어 각 그룹의 처음 두 행을 가져오려면 다음을 사용할 수 있습니다.
df.groupby('id').head(2).reset_index(drop=True)
이렇게 하면 다음 DataFrame이 반환됩니다.
id | value |
---|---|
1 | first |
1 | second |
2 | first |
2 | second |
3 | first |
3 | third |
4 | second |
4 | fifth |
5 | first |
6 | first |
6 | second |
7 | fourth |
7 | fifth |
위 내용은 여러 열로 Pandas DataFrame에서 각 그룹의 첫 번째 행을 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!