적용과 변환: 언제 Pandas Groupby에서 어느 것을 사용해야 합니까?

Susan Sarandon
풀어 주다: 2024-11-11 10:20:03
원래의
355명이 탐색했습니다.

 Apply vs. Transform: When Should You Use Which in Pandas Groupby?

적용을 사용해야 할까요, 아니면 변환을 사용해야 할까요?

개요:

Pandas에서 , groupby() 메서드는 특정 열로 그룹화된 데이터를 조작하기 위한 두 가지 옵션을 제공합니다. 적용() 및 변환(). 이러한 방법은 입력, 출력 및 동작 측면에서 다릅니다.

주요 차이점:

기능 적용 변형
Feature Apply Transform
Input: Passes DataFrame containing all columns for each group Passes individual Series for each column in each group
Output: Can return scalars, Series, DataFrames, or other objects Must return a sequence (Series, array, or list) with the same length as the group
Behavior: Operates on the entire DataFrame within each group Operates on a single column at a time
입력:

각 그룹의 모든 열을 포함하는 DataFrame을 전달 각 그룹의 각 열에 대해 개별 시리즈를 전달합니다. group
출력: 스칼라, 시리즈, DataFrames 또는 기타 객체를 반환할 수 있음 반환해야 함 동일한 길이의 시퀀스(시리즈, 배열 또는 목록) 그룹
동작:
    각 그룹 내의 전체 DataFrame에서 작동 단일 열에서 작동 한 번에
  • 사용 시기 적용:
  • 각 그룹 내의 전체 DataFrame에 사용자 지정 함수를 적용해야 하는 경우.이를 통해 복잡한 행 단위 처리가 가능하고 동일한 DataFrame이 반환됩니다. 행 수 입력.

    df.groupby('State').apply(lambda x: pd.DataFrame({'Average': x.mean()}))
    로그인 후 복사

    예:

    • 변환 사용 시기:

    각 내에서 열별로 사용자 정의 함수를 적용해야 합니다. group.이를 사용하면 전체 DataFrame에 영향을 주지 않고 특정 열을 조작할 수 있습니다.

    df.groupby('State').transform(lambda x: x - x.mean())
    로그인 후 복사

    예:

    • 추가 참고 사항:
    • Transform 메서드는 다음과 같아야 합니다. 그룹과 동일한 길이의 시퀀스를 반환하지 않으면 오류가 발생합니다.
    변환 함수에서 단일 스칼라를 반환하면 해당 스칼라가 그룹의 각 행에 적용됩니다.때때로 작업 중인 내용을 이해하기 위해 사용자 정의 함수에 전달된 개체를 인쇄하거나 표시하는 것이 도움이 됩니다.

    위 내용은 적용과 변환: 언제 Pandas Groupby에서 어느 것을 사용해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

  • 원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    저자별 최신 기사
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿