머신러닝/머신러닝 할 때 꼭 짚고 넘어갈 것
머신러닝 전 꼭 알고 가자! - Pandas 의 pivot_table
Cong_S
2022. 5. 4. 16:59
pivot_table 함수에 대해 알아보자.
엑셀의 피봇테이블과 유사한 형태의 함수를 Pandas 에서도 제공하고 있는데
언제 사용하는지부터 알아보자.
Pandas는 데이터를 처리할 때에 유니크한 값으로 저장되어있어야 관련된 데이터가 나오는 경우가 많다.
하지만, 실제로 데이터를 받을 때에는 같은 카테고리컬 데이터를 가지고 있지만 행이 달라 따로 연산이 될 때가 많다.
이럴 때 pivot_table함수를 이용해 같은 카테고리컬 데이터들고 행을 모아 하나의 데이터로 처리해주게 된다.
Name 컬럼의 값이 카테고리컬 데이터임을 확인했으니 Name 을 기준으로 pivot_table 을 사용하자.
pd.pivot_table(df, index= ['Name'], aggfunc = np.sum)
위와 같은 문장을 작성하면 된다.
첫 번째 파라미터에 편집할 데이터프레임,
두 번째 파라미터에 기준이 될 컬럼값을 index로 설정하고,
세 번째 파라미터 aggfunc 에 어떤 산식을 사용할 건지 정하면 된다.
세 번째 aggfunc 는 default 값으로 mean이 지정되어있어
아무것도 입력하지 않는다면 평균값이 나온다.
위의 식은 sum 즉, 덧셈 산식이 적용되게 된다.
pd.pivot_table(df, index= ['Name'], values=['Price','Quantity'],aggfunc=[np.sum, np.mean, np.std])
values 파라미터로 가져오길 원하는 컬럼만 가져올 수 있으며
aggfunc 에도 리스트를 이용해 여려 개의 산식을 함께 가져올 수도 있다.