Insight to Ptofitc 파이썬 실무 - 각 지점의 월별 최고 매출액 필터링

파이썬 실무 - 각 지점의 월별 최고 매출액 필터링

2024. 11. 8. 15:031. Data Analyst/1-1. Python

728x90
반응형

 

파이썬 실무 - 각 지점의 월별 최고 매출액 필터링

 
안녕하세요! 오늘은 파이썬을 사용하여 각 지점의 최고 매출액을 구하는 방법에 대해 알아보겠습니다. 예제와 함께 실무에서 유용한 분석을 어떻게 할 수 있는지 살펴보겠습니다.

문제 설정

우리가 가지고 있는 데이터프레임 df는 매출 데이터가 포함된 테이블입니다. 이 데이터는 매출이 발생한 매장(Store)과 월(Month), 그리고 해당 월의 매출 합계(Sub-Total)를 포함합니다. 목표는 각 매장과 월별로 최고 매출액을 찾아내는 것입니다.

데이터 예시

우선, 예를 들어 데이터프레임 df는 다음과 같은 형태일 수 있습니다:
 
 

StoreMonthSub-Total
AJan500
AJan700
AFeb600
BJan800
BFeb750
BFeb850
CJan450
CFeb650
CFeb700

 
이 데이터에서 각 매장과 월별로 최고 매출액을 찾아내고자 합니다.

파이썬 코드 분석

아래 코드를 통해 이 작업을 수행할 수 있습니다:
 

import pandas as pd

def max_subtotal(group):
    # Sub-Total 열에서 최대값의 인덱스를 찾습니다
    max_subtotal_idx = group['Sub-Total'].idxmax()
    # 해당 인덱스를 통해 전체 행에서 최고 매출액을 가진 행을 반환합니다
    return group.loc[max_subtotal_idx]
    
# 매장(Store)과 월(Month)별로 그룹화한 후, 각 그룹에서 max_subtotal 함수 적용
max_by_store = df.groupby(['Store', 'Month']).apply(max_subtotal)    
print(max_by_store)

 

코드 설명

  1. max_subtotal 함수:
    • group 파라미터는 특정 매장과 월에 해당하는 데이터의 서브셋입니다.
    • group['Sub-Total'].idxmax()를 사용하여 최고 매출액의 인덱스를 찾습니다.
    • group.loc[max_subtotal_idx]를 통해 해당 인덱스를 가진 행을 반환합니다.
  2. df.groupby(['Store', 'Month']).apply(max_subtotal):
    • df 데이터프레임을 매장과 월별로 그룹화합니다.
    • 각 그룹에 대해 max_subtotal 함수를 적용하여 최고 매출액을 가진 행을 찾습니다.

 

예제 실행 결과

위의 코드가 실행되면 다음과 같은 결과를 얻을 수 있습니다:


Store Month Sub-Total
A Jan 700
A Feb 600
B Jan 800
B Feb 850
C Jan 450
C Feb 700

이 결과는 각 매장과 월별로 가장 높은 매출액을 나타냅니다.

 

결론

이러한 방식으로 데이터를 분석하면, 매장별 및 월별 매출 추세를 파악하고, 최고 매출액을 기준으로 더 깊이 있는 인사이트를 얻을 수 있습니다. 파이썬의 pandas 라이브러리를 활용하여 데이터 그룹화 및 집계 작업을 손쉽게 수행할 수 있으므로 실무에서 매우 유용한 도구가 될 수 있습니다.

 
 
 
 
728x90
반응형