[파이썬] pandas에서 집계 함수 (agg)

Pandas는 데이터 분석과 조작을 위한 강력한 라이브러리입니다. 이 중에서도 집계 함수 (agg)는 데이터 프레임의 행 또는 열에서 통계적 측정을 수행하는 데 유용합니다. 이번 포스트에서는 pandas의 agg 함수를 사용하여 데이터를 집계하는 방법에 대해 알아보겠습니다.

집계 함수 (agg) 개요

agg 함수는 데이터 프레임의 특정 행 또는 열에서 집계 함수를 적용하는 데 사용됩니다. 기본적으로 agg 함수는 열을 기준으로 집계 작업을 수행하며, 사용자 정의 함수를 적용할 수도 있습니다. 집계 함수는 다양한 통계적 측정을 수행할 수 있으며, 일반적인 예로는 합계(sum), 평균(mean), 최댓값(max), 최솟값(min), 중앙값(median), 표준편차(std) 등이 있습니다.

agg 함수 사용법

agg 함수는 데이터 프레임의 열에 적용할 수 있습니다. 예를 들어, 다음과 같은 데이터 프레임이 있다고 가정해봅시다.

import pandas as pd

data = {'Name': ['John', 'Mary', 'Steve', 'Jane'],
        'Age': [28, 25, 32, 30],
        'Salary': [50000, 60000, 75000, 40000]}

df = pd.DataFrame(data)

이 데이터 프레임에서 Age와 Salary 열에 대해 몇 가지 통계 측정을 수행해보겠습니다.

통계 측정 함수 적용하기

df.agg({'Age': 'mean', 'Salary': ['sum', 'max', 'min']})

위의 코드에서는 Age 열에 대해서는 평균(mean)을, Salary 열에 대해서는 합계(sum), 최댓값(max), 최솟값(min)을 계산합니다. 결과는 새로운 데이터 프레임으로 반환됩니다.

사용자 정의 함수 적용하기

agg 함수는 사용자가 작성한 함수도 적용할 수 있습니다. 예를 들어, 다음과 같은 사용자 정의 함수를 정의해봅시다.

def salary_increase(x):
    return x * 1.1

이제 정의한 함수를 사용하여 Salary 열에 대해 계산해봅시다.

df.agg({'Salary': salary_increase})

위의 코드는 Salary 열의 모든 값을 10% 증가시킵니다.

결론

pandas의 agg 함수를 사용하면 데이터 프레임의 행 또는 열에서 다양한 통계적 측정을 수행할 수 있습니다. 내장된 통계 함수를 사용하거나, 사용자 정의 함수를 작성하여 직접 정의할 수도 있습니다. 이를 통해 데이터를 유연하게 집계하고 데이터 분석에 활용할 수 있습니다.