반응형
https://steadiness-193.tistory.com/76
위 포스팅의 조금 더 살을 붙이는 내용이다.
데이터 불러오기
우선 Pclass와 성별 컬럼으로 인덱스를 멀티인덱스로 바꿔보자
참고로 Pclass와 성별 컬럼의 고유값들이다.
인덱스 변경
멀티인덱스로 잘 바뀌었다.
안쪽으로 올수록 레벨이 높아진다.
Pclass의 레벨은 0, 성별의 레벨은 1이다.
1. Pclass 인덱스로만 그룹핑하기
train.groupby(['Pclass'], level=0)
train.groupby(['Pclass'])
train.groupby(level='Pclass')
위 세가지 방법 모두 가능하다.
모두 이상 없이 잘 그룹화되었다.
단, 멀티인덱스 중 하나인 성별은 보이지 않는다.
2. 성별 인덱스로만 그룹핑하기
train.groupby(['Sex'], level=1)
train.groupby(['Sex'])
train.groupby(level='Sex')
이 또한 모두 가능하다.
이상 없이 잘 그룹화되었다.
단, 멀티인덱스 중 Pclass는 보이지 않는다.
3. 멀티인덱스로 그룹화하기
train.groupby(['Pclass', 'Sex'], level=[0, 1])
train.groupby(['Pclass', 'Sex'])
train.groupby(level=['Pclass', 'Sex'])
위 세가지 모두 가능하다.
이렇게 (멀티)인덱스를 그룹핑에 이용할 땐
굳이 level을 사용하지 않아도 잘 묶였다.
명시적으로 입력해야하는 것이 아니라면
간결하게 작성해도 무방해보인다.
반응형
'Pandas > 응용' 카테고리의 다른 글
판다스 - 콤마(,) 로 구분된 컬럼에서 원하는 데이터 추출하기 (0) | 2020.07.08 |
---|---|
판다스 - groupby : 인덱스를 함수로 그룹핑하기 (0) | 2020.07.07 |
판다스 - 누락데이터를 그룹별로 대체하여 컬럼(열) 만들기 : insert, groupby, transform, fillna (0) | 2020.07.06 |
판다스 - 원하는 위치에 조건에 맞는 컬럼(열) 추가 : insert 응용 (0) | 2020.07.06 |
판다스 - 여러 대용량 데이터 처리하기 : os.listdir (0) | 2020.07.06 |