Pandas: 피벗 테이블에서 multiindex를 제거하는 방법


Pandas 피벗 테이블에서 multiIndex를 제거하려면 Reset_index() 함수와 함께 인수를 사용할 수 있습니다.

 p.d. pivot_table (df, index=' col1 ', columns=' col2 ', values=' col3 '). reset_index ()

다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.

예: Pandas PivotTable에서 MultiIndex 제거

다양한 농구 선수에 대한 정보가 포함된 다음과 같은 pandas DataFrame이 있다고 가정합니다.

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['G', 'G', 'F', 'F', 'G', 'F', 'F', 'F'],
                   ' points ': [4, 4, 6, 8, 9, 5, 5, 12]})

#view DataFrame
print (df)

  team position points
0 AG 4
1 GA 4
2 AF 6
3AF 8
4 BG 9
5 BF 5
6 BF 5
7 BF 12

이제 포지션 별 평균 점수 를 요약하기 위해 다음 피벗 테이블을 생성한다고 가정합니다.

 #create pivot table to summarize mean points by team and position
p.d. pivot_table (df, index=' team ', columns=' position ')

	        points
FG position
team		
At 7.000000 4.0
B 7.333333 9.0

결과 피벗 테이블은 포지션 별 평균 포인트 값을 요약하지만 multiIndex를 포함합니다.

multiIndex를 제거하려면 피벗_테이블() 함수에서 인수를 사용하고 끝에 재설정_인덱스()를 추가하면 됩니다.

 #create pivot table to summarize mean points by team and position
p.d. pivot_table (df, index=' team ', columns=' position ', values=' points '). reset_index ()

position team F G
0 to 7.000000 4.0
1 B 7.333333 9.0

결과 피벗 테이블에는 포지션 별 평균 포인트 값이 요약되어 있으며 더 이상 multiIndex가 없습니다.

Pivot_table() 함수는 기본적으로 평균값을 계산합니다.

합계와 같은 다른 측정항목을 계산하려면 다음과 같이 aggfunc 인수를 사용하세요.

 #create pivot table to summarize sum of points by team and position
p.d. pivot_table (df, index=' team ', columns=' position ', values=' points ',
               aggfunc=' sum '). reset_index ()

position team FG
0 to 14 8
1 B 22 9

결과 피벗 테이블은 팀별 , 포지션포인트 값의 합을 요약하며, multiIndex도 없습니다.

참고 : 여기에서 pandasivot_table() 함수에 대한 전체 문서를 찾을 수 있습니다.

추가 리소스

다음 튜토리얼에서는 Pandas에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.

Pandas: 피벗 테이블에 필터를 추가하는 방법
Pandas: 열의 값을 기준으로 피벗 테이블을 정렬하는 방법
Pandas: 피벗 테이블에 소계를 추가하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다