[파이썬] pandas 데이터 변환과 pivot

데이터 처리는 데이터 과학 및 분석에서 매우 중요한 부분입니다. 그 중에서도 pandas는 Python에서 가장 인기있는 데이터 분석 라이브러리입니다. pandas를 사용하여 데이터를 변환하고 피벗하는 방법에 대해 알아보겠습니다.

데이터 변환

데이터 변환은 데이터를 다른 형식으로 변환하거나 정제하는 과정을 의미합니다. pandas는 다양한 데이터 변환 기능을 제공하여 이 작업을 보다 간단하게 수행할 수 있도록 합니다.

예제 코드

다음은 pandas를 사용하여 데이터를 변환하는 간단한 예제 코드입니다.

import pandas as pd

# CSV 파일 읽어오기
data = pd.read_csv('data.csv')

# 데이터 타입 변환
data['age'] = data['age'].astype(int)

# 결측치 처리
data = data.fillna(0)

# 데이터 정렬
data = data.sort_values(by=['age'], ascending=False)

위의 예제에서는 CSV 파일에서 데이터를 읽어와서 age 열의 데이터 타입을 정수형으로 변환하고, 결측치(null 값)를 0으로 채우며, age 열을 기준으로 내림차순으로 정렬하고 있습니다.

데이터 변환은 데이터의 특성과 목적에 따라 다양한 방법으로 수행될 수 있습니다. 이 예제는 데이터 변환의 기본적인 개념을 보여주는 것이므로 실제 데이터에 적용할 때는 적절한 방법을 선택하시기 바랍니다.

피벗

피벗은 데이터를 재구성하는 방법 중 하나입니다. 기존의 행과 열을 새로운 형태로 변환하여 데이터를 다른 관점에서 분석할 수 있습니다.

예제 코드

다음은 pandas를 사용하여 데이터를 피벗하는 간단한 예제 코드입니다.

import pandas as pd

# 데이터 프레임 생성
data = {'Name': ['Alice', 'Bob', 'Charlie'],
        'Age': [25, 30, 35],
        'Gender': ['Female', 'Male', 'Male'],
        'Score': [80, 90, 85]}

df = pd.DataFrame(data)

# 피벗 테이블 생성
pivot_table = pd.pivot_table(df, index='Name', columns='Gender', values='Score')

print(pivot_table)

위의 예제에서는 데이터 프레임을 생성한 후, Name, Age, Gender, Score 열을 포함하고 있는 데이터를 사용하여 피벗 테이블을 생성하고 있습니다. 피벗 테이블은 Name 열을 인덱스로 하고 Gender 열을 컬럼으로 하여 Score 열의 값을 표로 나타내는 것을 보여주고 있습니다.

피벗은 데이터를 다른 형태로 변환하는 데 유용한 기능이지만, 데이터의 특성과 분석 목적에 따라 적절하게 사용해야 합니다. 더욱 복잡한 피벗 기능을 사용하고 싶다면 pandas의 공식 문서를 참조하시기 바랍니다.

마무리

pandas는 데이터 변환과 피벗 등 다양한 기능을 제공하여 데이터 처리를 보다 효율적으로 수행할 수 있도록 도와줍니다. 이러한 기능들을 활용하여 데이터를 신속하게 변환하고 분석할 수 있습니다.

이 글에서는 pandas를 사용하여 데이터를 변환하고 피벗하는 방법에 대해 간단히 예제 코드를 통해 소개하였습니다. 향후 데이터 처리 작업을 수행할 때 이러한 기능들을 적극적으로 활용하시기 바랍니다.

Happy coding!