반응형
1. 피벗 테이블 함수 : pivot_table()
pivot_table() 함수의 기본 구성요소
- 행 인덱스 (index)
- 열 인덱스 (columns)
- 데이터 값 (values)
- 데이터 집계 함수 (aggfunc)
각 구성요소에 적용할 데이터 프레임의 열을 각각 함수의 인자로 전달한다.
4가지 구성요소를 적절히 입력하고 피벗테이블을 생성해보자.
위 데이터프레임에서
인덱스는 '광역시도', '시도'로 하고
칼럼은 '구분' ( 남, 여 , 합계 )으로
입력 값은 '인구수', '20-39세', '65세이상'으로 하여 테이블을 만들어보겠습니다.
집계 함수를 넣어주지 않고 index, columns, values를 넣어주면 기본적으로 누적 값인 sum으로 계산되어 테이블을 보여준다.
함수는 aggfunc = 'mean' 또는 여러 개일 때는 똑같이 affgunc = ['mean', 'max'] 이렇게 넣어주면 된다.
피봇 테이블 컬럼명 예쁘게 만드는 방법
tmp_columns = [pop.columns.get_level_values(0)[n] + \
pop.columns.get_level_values(1)[n]
for n in range(0, len(pop.columns.get_level_values(0)))]
pop.columns = tmp_columns
pop.head()
pop.columns.get_level_values(0)을 통해 첫 번째 칼럼인 ['20-39세', '65세이상', '인구수'] 를 불러오고
pop.columns.get_level_values(1)을 통해 두 번째 컬럼인 ['남자', '여자', '합계'] 를 받아와서
각 위치에 있는 컬럼명을 더해준다.
반응형
'Python > Pandas' 카테고리의 다른 글
[Pandas] 데이터 프레임 재구조화 (stack, unstack) (0) | 2022.06.09 |
---|---|
[Pandas] dtype 기반 열 선택 / select_dtypes (0) | 2022.06.06 |
[pandas] rename, reset_index (0) | 2022.05.17 |
[pandas] 레이블인코딩 / 원핫 인코딩 / 문자열을 범주형 데이터로 바꾸기 (0) | 2022.03.05 |
[Pandas] 데이터 살펴보기 / head,tail,info,describe,shape,count,value_counts (0) | 2022.02.24 |