그룹화된 DataFrame 에서 인덱스 재설정
이 단계에서는 그룹화된 출력을 일반 DataFrame 으로 다시 변환하는 방법을 배우게 됩니다. 여기서 그룹화 키는 인덱스가 아닌 열이 됩니다. 기본적으로 groupby()는 그룹화 키를 결과 Series 또는 DataFrame 의 인덱스로 만듭니다. 때로는 추가 처리 또는 시각화를 위해 "평탄한" DataFrame 을 원할 수 있습니다.
이를 달성하는 가장 쉬운 방법은 groupby() 메서드 내에서 as_index=False 매개변수를 사용하는 것입니다.
2 단계의 단일 열 그룹화를 반복하되, 이번에는 Category를 일반 열로 유지하겠습니다.
다음 코드를 main.py 파일 끝에 추가합니다.
## 'Category'로 그룹화하고 집계하되 'Category'를 열로 유지
category_sales_flat = df.groupby('Category', as_index=False)['Sales'].sum()
print("\nGrouped data with 'Category' as a column:")
print(category_sales_flat)
파일을 저장하고 마지막으로 실행합니다.
python3 main.py
출력을 관찰합니다. Category가 인덱스가 되는 대신, 이제 새 DataFrame 의 첫 번째 열이 되었으며 DataFrame 은 표준 정수 인덱스 (0, 1, 2) 를 가집니다.
... (previous output) ...
Grouped data with 'Category' as a column:
Category Sales
0 Books 750
1 Clothing 1700
2 Electronics 2700
이 형식은 후속 데이터 조작 작업에 더 편리한 경우가 많습니다. 대안적인 방법은 그룹화된 결과에 .reset_index()를 호출하는 것으로, 이는 동일한 결과를 얻습니다.