>백엔드 개발 >파이썬 튜토리얼 >Groupby를 사용한 열 빼기 및 평균 계산에 '적용' 및 '변환'을 어떻게 사용할 수 있나요?

Groupby를 사용한 열 빼기 및 평균 계산에 '적용' 및 '변환'을 어떻게 사용할 수 있나요?

DDD
DDD원래의
2024-11-21 09:00:11590검색

How Can You Use `apply` and `transform` for Column Subtraction and Mean Calculation with Groupby?

적용 및 변환을 사용하여 두 열 빼기 및 평균 계산

적용과 변환의 차이점

DataFrame에서 groupby를 사용할 때 적용 및 변환에는 별개의 특성:

입력:

  • apply는 각 그룹의 전체 DataFrame을 입력으로 사용합니다.
  • transform은 각 그룹의 각 열을 개별적으로 처리합니다. 로서 시리즈.

출력:

  • apply는 스칼라, 시리즈, DataFrame(또는 기타 데이터 유형)을 반환할 수 있습니다.
  • 변환에는 그룹과 길이가 동일한 시퀀스가 ​​필요합니다.

사용자 정의 빼기 함수

'b'에서 'a' 열을 빼기 위해 사용자 지정 함수 subtract_two를 고려하세요.

def subtract_two(x):
    return x['a'] - x['b']

적용 및 변환 사용

1. 적용:

적용을 사용하면 각 그룹의 'a'와 'b'의 차이를 계산하여 시리즈를 반환할 수 있습니다:

df.groupby('A').apply(subtract_two)

2. 변환:

변형을 사용하려고 시도하면 KeyError가 발생합니다. 변환은 그룹과 동일한 길이의 시퀀스를 기대하기 때문입니다:

df.groupby('A').transform(subtract_two)
# KeyError: 'a'

변환에서 스칼라 반환

뺄셈에 변환을 사용하려면 사용자 정의 함수에서 스칼라를 반환하고 이를 다음의 모든 행에 적용할 수 있습니다. 그룹:

def subtract_two_scalar(x):
    return (x['a'] - x['b']).mean()

df.groupby('A').transform(subtract_two_scalar)

이것은 각 그룹의 평균 차이가 있는 계열을 반환합니다.

위 내용은 Groupby를 사용한 열 빼기 및 평균 계산에 '적용' 및 '변환'을 어떻게 사용할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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