파이썬 | 팬더.피벗()
pandas.pivot(색인, 열, 값) 함수는 DataFrame의 3개 열을 기반으로 피벗 테이블을 생성합니다. 인덱스/열의 고유한 값을 사용하고 값으로 채웁니다.
Python Pandas.pivot() 구문
통사론 : pandas.pivot(색인, 열, 값)
매개변수:
- 인덱스[ndarray] : 새 프레임의 인덱스를 만드는 데 사용할 레이블
- 열[ndarray] : 새 프레임의 열을 만드는 데 사용할 레이블
- 값[ndarray] : 새 프레임의 값을 채우는 데 사용할 값
보고: 재구성된 DataFrame
예외: 중복된 항목이 있으면 ValueError가 발생합니다.
샘플 DataFrame 만들기
여기에서는 기사 전체에서 사용할 샘플 DataFrame을 만들고 있습니다.
파이썬3
# importing pandas as pd> import> pandas as pd> > # creating a dataframe> df> => pd.DataFrame({> 'A'> : [> 'John'> ,> 'Boby'> ,> 'Mina'> ],> > 'B'> : [> 'Masters'> ,> 'Graduate'> ,> 'Graduate'> ],> > 'C'> : [> 27> ,> 23> ,> 21> ]})> > df> |
산출
A B C 0 John Masters 27 1 Boby Graduate 23 2 Mina Graduate 21
팬더 피벗() 함수 예
다음은 다음을 사용하여 DataFrame을 피벗할 수 있는 몇 가지 예입니다. 팬더 피봇() 함수 파이썬 :
- 생성 및 DataFrame 피벗
- 다단계 피벗 테이블 만들기 팬더 데이터프레임
- DataFrame 피벗의 ValueError
생성 및 DataFrame 피벗
이 예에서는 pandas DataFrame( df> )은 'A' 열과 'B' 열이 각각 새 인덱스와 열이 되고, 'C' 열의 값이 결과 피벗 테이블의 셀을 채우는 방식으로 피벗됩니다. 이 함수는 'A'와 'B'의 각 조합이 'C'에 고유한 해당 값을 갖는다고 가정합니다.
파이썬3
# values can be an object or a list> df.pivot(> 'A'> ,> 'B'> ,> 'C'> )> |
산출
B Graduate Masters A Boby 23.0 NaN John NaN 27.0 Mina 21.0 NaN
Pandas DataFrame을 사용하여 다단계 피벗 테이블 만들기
이 예에서 pandas DataFrame( df> )는 인덱스로 'A', 열로 'B'를 사용하고 'C'와 'A' 열 모두에서 값을 추출하여 셀을 채우는 다단계 피벗 테이블로 변환됩니다. 이 접근 방식을 사용하면 결과 피벗 테이블에 여러 차원을 통합하여 데이터를 보다 자세히 표현할 수 있습니다.
파이썬3
# value is a list> df.pivot(index> => 'A'> , columns> => 'B'> , values> => [> 'C'> ,> 'A'> ])> |
산출
C A B Graduate Masters Graduate Masters A Boby 23.0 NaN NaN NaN John NaN 27.0 NaN NaN Mina 21.0 NaN NaN NaN
DataFrame을 피벗할 때 ValueError가 발생했습니다.
여러 값이 포함된 인덱스, 열 조합이 있으면 ValueError를 발생시킵니다.
파이썬3
# importing pandas as pd> import> pandas as pd> > # creating a dataframe> df> => pd.DataFrame({> 'A'> : [> 'John'> ,> 'John'> ,> 'Mina'> ],> > 'B'> : [> 'Masters'> ,> 'Masters'> ,> 'Graduate'> ],> > 'C'> : [> 27> ,> 23> ,> 21> ]})> > > df.pivot(> 'A'> ,> 'B'> ,> 'C'> )> |
산출
ValueError: Index contains duplicate entries, cannot reshape