본문 바로가기
Python/PANDAS

Pandas - 중복된 값들 합산 .pivot_table( )

by 하니__ 2024. 4. 11.

 

여러 데이터들이 있을때

 

중복된 데이터들을 합쳐야 할때가 있다

 

 

 

 

 

 

이러한 데이터가 있을때

 

같은 이름으로 묶으면서

Quantity와 Price는 병합하는 기능을 사용하자

 

 

 

 

 

pd.pivot_table(df_test, index= ['Name'], values = ['Quantity','Price' ] )

 

 

기본형은 pivot_table( )에

기본이 되는 데이터프레임,

인덱스= [인덱스에 들어갈 콜럼 = 중복인것을 하나로 만들 콜럼] 

밸류스= [합쳐지는 콜럼들] (하나라면 [ ] 는 빼도 좋다)

 

 

별 다른 파라미터를 추가로 입력하지 않는다면

합쳐진 데이터들은 평균값으로 나오게 된다

 

하지만

평균이 아니라 합한 값을 원할때에는

 

pd.pivot_table(df_test, index= ['Name'], values = ['Quantity','Price' ] , aggfunc = 'sum')

 

 

 

aggfunc = 'sum' 을 추가하여 평균이 아닌 합이 나오도록 수정하자

 

 

 

aggfunc=['max','min']

을 넣는다면 최대값과 최소값만 적어준다

 

pd.pivot_table(df_test, index= ['Product','Rep'], values = ['Price'], aggfunc=['max','min'])

 

 

그리고 인덱스에 2개 이상을 넣게되면

더 많이 중복되는 값이 앞으로 가게되며

 

2개의 인덱스가 생기게 된다