반응형
pandas.TimeGrouper: 시간 기반 데이터 집계의 멋진 도구
데이터를 다룰 때 가장 중요한 것 중 하나는 시간을 정리하고 이해하는 것입니다. pandas 라이브러리에서는 TimeGrouper를 통해 시간 기반의 데이터를 집계할 수 있는 뛰어난 기능을 제공합니다. 이 글에서는 TimeGrouper를 사용하여 시간 기반 데이터를 효과적으로 처리하는 방법을 알아보겠습니다.
pandas.TimeGrouper 소개
TimeGrouper는 주어진 시간 인덱스를 기준으로 데이터를 그룹화하고 집계할 수 있게 해주는 유용한 도구입니다. 특히 시계열 데이터에서 특정 주기(예: 일, 주, 월 등)로 데이터를 집계할 수 있어 데이터 분석에 매우 유용합니다.
클래스 시그니처
pandas.TimeGrouper(freq)
매개변수:
- freq: 데이터를 그룹화할 주기(예: 'D'는 하루, 'W'는 주, 'M'은 월 등).
반환 값:
- 지정된 주기별로 그룹화된 데이터 오브젝트를 반환합니다.
사용 예제
기본 예제
다음은 TimeGrouper을 사용하여 주 단위로 데이터를 집계하는 기본 예제입니다.
import pandas as pd
# 예제 데이터프레임 생성
date_rng = pd.date_range(start='2024-01-01', end='2024-01-10', freq='D')
data = {'date': date_rng, 'value': range(10)}
df = pd.DataFrame(data)
# 'date'를 인덱스로 설정
df.set_index('date', inplace=True)
# TimeGrouper를 사용하여 주 단위로 데이터를 집계
weekly_groups = df.groupby(pd.Grouper(freq='W')).sum()
print(weekly_groups)
# 출력:
# value
# date
# 2024-01-07 21
# 2024-01-14 9
다양한 주기로 데이터 집계하기
이제 매일의 데이터를 월 단위로 집계해보겠습니다. 어떻게 다른 주기의 집계를 수행할 수 있는지 볼까요?
monthly_groups = df.groupby(pd.Grouper(freq='M')).sum()
print(monthly_groups)
# 출력:
# value
# date
# 2024-01-31 45
결론
pandas.TimeGrouper는 시간 기반 데이터 집계에 매우 강력한 도구입니다. 이 기능을 통해 데이터를 손쉽게 정리하고, 특정 시간 간격에 따른 통계치를 분석할 수 있는 가능성을 열어줍니다. 시계열 데이터를 효과적으로 처리하여 통찰력을 확보해보세요!
- TimeGrouper을 활용하여 데이터를 원하는 주기로 집계해보세요!
- 지금 바로 pandas의 시간 집계 기능을 경험해 보세요!
반응형
'Python > Pandas' 카테고리의 다른 글
pandas IndexError: list index out of range 오류 해결하기 (0) | 2025.06.19 |
---|---|
pandas.Timestamp로 타임스탬프 생성하기 (0) | 2025.06.19 |
pandas IndexError: DataFrame index out of range 오류 해결하기 (0) | 2025.06.18 |
pandas ImportError: cannot import name 'pandas' from partially initialized module 오류 해결하기 (0) | 2025.06.18 |
pandas.Series.map으로 값 변환하기 (0) | 2025.06.18 |