Python

[JupyterNotebook]Unpivot

meister9701 2024. 10. 28. 10:32

Unpivot은 Pivot의 반대작업이다.

수집해서 분석용 데이터로 만들었던 것을 다시 원래의 데이터 형태로 변환해 다른 분석데이터를 만들거나 새로운 데이터를 추가할 때 주로 사용하는 방법이다.

예시 데이터프레임

데이터 프레임을 간단하게 만들어 봤다.

stack을 이용하면 시리즈데이터로 다시 변환한다는 것을 알 수 있다.

Unpivot

JupyterNotebook에서 Unpivot은 stack과 reset_index를 이용하여 할 수있다.

다시 원래의 데이터로 돌아가고 열이름은 기본적으로 level과 숫자로 조합되기 때문에 열이름을 새로 부여해주어야한다.

신규 데이터추가

새로운 데이터를 만들어서 concat함수를 이용해서 병합하였다.

데이터 병합에 관련된 것은 내일 더 자세히 알아볼 것이다. 지금은 concat이 병합을 해준다는 사실만 알고있자.

Pivot

새로운 데이터를 추가하여 다시 Pivot을 한 모습이다.

새로운 데이터를 원본 데이터에 추가하고 그것을 이용해 Pivot을 하였다.

이렇게 사용하면 데이터를 원본 및 Pivot데이터 프레임 두 군데에 추가할 필요 없이 원본 데이터를 변환하면 자동으로 Pivot테이블도 새로 작동시키면 같이 변환된다.