"내일배움캠프" 파이썬 전처리 시각화

신주연·2025년 6월 9일
0

데이터 전처리란?

  • 데이터 분석 전에 결측치 처리, 이상치 제거, 형 변환, 정규화 등 데이터를 정제하고 가공하는 작업입니다.

주요 라이브러리

  • pandas: 테이블형 데이터 처리

  • numpy: 수치 계산, 배열 처리

  • sklearn.preprocessing: 정규화, 스케일링

import pandas as pd

  • 데이터 불러오기
    df = pd.read_csv("data.csv")

  • 결측치 처리
    df = df.dropna() # 결측행 삭제
    또는
    df["컬럼명"].fillna(df["컬럼명"].mean(), inplace=True) # 평균으로 대체

  • 데이터 타입 변경
    df["date"] = pd.to_datetime(df["date"])

  • 이상치 제거 (예: 99% 이상 값 제거)
    df = df[df["value"] < df["value"].quantile(0.99)]

시각화란?

  • 데이터의 분포, 상관관계 등을 눈으로 보기 쉽게 표현하는 작업입니다

주요 라이브러리

  • matplotlib: 기본 그래프 그리기

  • seaborn: 통계 시각화에 강함

  • plotly: 인터랙티브한 시각

import matplotlib.pyplot as plt
import seaborn as sns

히스토그램

  • plt.hist(df["age"])
    plt.title("Age Distribution")
    plt.show()

상관관계 히트맵

  • sns.heatmap(df.corr(), annot=True, cmap="coolwarm")
    plt.title("Feature Correlation")
    plt.show()

박스플롯으로 이상치 확인

  • sns.boxplot(x="gender", y="income", data=df)
    plt.title("Income by Gender")
    plt.show()

전처리 + 시각화 활용 예시

결측치 시각화

  • import missingno as msno
    msno.matrix(df)

데이터 분포 시각화

  • sns.histplot(df["sales"], kde=True)

변수 간 관계 시각화

  • sns.pairplot(df[['sales', 'marketing_spend', 'profit']])

0개의 댓글