Pandas 를 이용한 데이터 재구성

Beginner

This tutorial is from open-source community. Access the source code

소개

이 랩에서는 sort_values, pivot, pivot_table, 그리고 melt와 같은 다양한 함수를 사용하여 pandas 에서 데이터를 재구성하는 방법을 살펴봅니다. 타이타닉 (Titanic) 및 대기 질 (Air Quality) 데이터 세트를 사용하여 재구성 기법을 시연할 것입니다.

VM 팁

VM 시작이 완료되면, 왼쪽 상단 모서리를 클릭하여 Notebook 탭으로 전환하여 실습을 위해 Jupyter Notebook에 액세스하십시오.

때로는 Jupyter Notebook 이 로딩을 완료하는 데 몇 초 정도 기다려야 할 수 있습니다. Jupyter Notebook 의 제한 사항으로 인해 작업의 유효성 검사는 자동화될 수 없습니다.

학습 중에 문제가 발생하면 언제든지 Labby 에게 문의하십시오. 세션 후 피드백을 제공해주시면 문제를 신속하게 해결해 드리겠습니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 97%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

라이브러리 임포트 및 데이터 로드

먼저, 필요한 라이브러리를 임포트하고 데이터 세트를 로드하겠습니다.

import pandas as pd

## 타이타닉 데이터 세트 로드
titanic = pd.read_csv("data/titanic.csv")

## 대기 질 데이터 세트 로드
air_quality = pd.read_csv("data/air_quality_long.csv", index_col="date.utc", parse_dates=True)

테이블 행 정렬

타이타닉 데이터 세트를 승객의 나이별로 정렬한 다음, 객실 등급과 나이 순으로 내림차순으로 정렬합니다.

## 나이별 정렬
titanic.sort_values(by="Age").head()

## Pclass 및 Age 를 내림차순으로 정렬
titanic.sort_values(by=['Pclass', 'Age'], ascending=False).head()

Long 형식에서 Wide 형식 테이블로 변환

이제 pivot 함수를 사용하여 대기 질의 long 형식 데이터를 wide 형식으로 변환합니다.

## no2 데이터만 필터링
no2 = air_quality[air_quality["parameter"] == "no2"]

## 각 위치에 대해 2 개의 측정값 사용 (head) (groupby)
no2_subset = no2.sort_index().groupby(["location"]).head(2)

## 데이터 피벗
no2_subset.pivot(columns="location", values="value")

피벗 테이블 생성

각 스테이션에서 𝑁𝑂2 및 𝑃𝑀25 의 평균 농도를 찾기 위해 피벗 테이블을 생성합니다.

air_quality.pivot_table(
    values="value", index="location", columns="parameter", aggfunc="mean"
)

Wide 형식에서 Long 형식으로 변환

이제 melt 함수를 사용하여 𝑁𝑂2 의 wide 형식 데이터를 long 형식으로 변환해 보겠습니다.

## no2_pivoted 의 인덱스 재설정
no2_pivoted = no2.pivot(columns="location", values="value").reset_index()

## 데이터 멜트 (melt)
no_2 = no2_pivoted.melt(id_vars="date.utc")

요약

이 랩에서는 sort_values, pivot, pivot_table, 그리고 melt와 같은 다양한 함수를 사용하여 pandas 에서 데이터를 재구성하는 방법을 배웠습니다. 타이타닉 (Titanic) 및 대기 질 (Air Quality) 데이터 세트에 이러한 기술을 적용하여 데이터를 정렬, 피벗 (pivot) 및 멜트 (melt) 했습니다. 이러한 재구성 기술은 pandas 에서 데이터를 처리할 때 필수적이며, 데이터를 효율적으로 분석하고 시각화하는 데 도움이 될 수 있습니다.