>백엔드 개발 >파이썬 튜토리얼 >그룹화 후 Pandas DataFrame 열에서 가장 일반적인 값을 찾는 방법은 무엇입니까?

그룹화 후 Pandas DataFrame 열에서 가장 일반적인 값을 찾는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-30 12:13:12626검색

How to Find the Most Common Value in a Pandas DataFrame Column After Grouping?

GroupBy pandas DataFrame 및 가장 일반적인 값 선택

당신은 3개의 문자열 열이 있는 데이터 프레임을 정리하여 다음을 보장해야 합니다. 세 번째 열에는 처음 두 열의 지정된 조합에 대한 올바른 값이 포함되어 있습니다. 제공한 코드 조각은 처음 두 열을 기준으로 데이터 프레임을 그룹화하고 각 조합에 대해 세 번째 열의 가장 일반적인 값을 선택하려고 시도합니다. 그러나 agg 함수를 실행하려고 할 때 문제가 발생합니다.

Pandas 사용하기 >= 0.16

코드에 사용한 구문이 오래되었습니다. . 대신 Pandas 버전 0.16 이상에서 사용할 수 있는 pd.Series.mode 함수를 활용하세요. 이 함수는 일련의 문자열에서 가장 일반적인 값을 반환합니다. 적용 방법은 다음과 같습니다.

source.groupby(['Country','City'])['Short name'].agg(pd.Series.mode)

이 구문은 데이터 프레임을 '국가' 및 '도시'별로 그룹화하고, pd.Series.mode 함수를 각 그룹의 '짧은 이름' 열에 적용하고, 결과.

DataFrame으로 출력이 필요한 경우 다음을 사용하세요. line:

source.groupby(['Country','City'])['Short name'].agg(pd.Series.mode).to_frame()

여러 모드 처리

pd.Series.mode 함수는 여러 모드가 존재하는 상황도 효과적으로 처리합니다. 예를 들어, 가장 일반적인 값과 동일한 빈도로 여러 값이 발생하는 경우 모드 목록으로 반환됩니다.

대안(권장하지 않음)>

Python 표준 라이브러리의 Statistics.mode 함수를 사용할 수 있습니다. 그러나 이 접근 방식은 여러 모드를 처리할 때 제대로 작동하지 않습니다. 가장 일반적인 값이 하나도 없으면 StatisticsError가 발생합니다.

위 내용은 그룹화 후 Pandas DataFrame 열에서 가장 일반적인 값을 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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