데이터

제로베이스 데이터사이언스 스쿨 - Part 01. 데이터 분석을 위한 Python_Chapter 02-4

Leah (리아) 2025. 9. 24. 19:26
반응형

Chapter 02. 데이터 핸들링을 위한 Numpy와 Pandas

 

데이터 필터링

01. loc와 iloc 인덱서

  • loc: 라벨(명시적 인덱스)을 기준으로 데이터 선택, 조건 필터링 가능
  • iloc: 숫자(암묵적 인덱스)를 기준으로 데이터 선택
  • 차이점: loc는 슬라이싱 시 마지막 인덱스를 포함하지만, iloc는 포함하지 않음

02. 행 및 열 선택과 제거

  • 열 선택
df['col']          # Series 반환
df[['col']]        # DataFrame 반환
df[['col1','col2']]  # 여러 열 선택

 

  • 행/열 제거 → drop 메서드
    • axis=0: 행 제거
    • axis=1: 열 제거
    • inplace=True: 원본 데이터 수정

03. 조건 연산을 이용한 필터링

  • 조건 연산자
    • 비교 연산자: ==, >, >=
    • between(a, b) : 값이 범위 안에 있는지 확인
    • isin(array) : 특정 집합에 포함 여부 확인
    • isnull() : 결측값 여부 확인
    • 논리 연산자: &(and), |(or)

데이터 핸들링과 변환

 

01. 배열 연산

  • Pandas 배열 연산은 인덱스 기반으로 수행됨
  • 요소별(element-wise) 연산 가능, Numpy와 유사
  • 인덱스 불일치 시 NaN 발생
  • 새로운 열 생성 가능
df['new'] = df['col1'] + df['col2']
df['flag'] = (df['col1'] > 10).astype(int)

 


 

02. 데이터 핸들링

  • 데이터 확인: head(), tail(), shape, info(), describe()
  • 데이터 변환:
    • astype: 타입 변환
    • replace: 특정 값을 다른 값으로 교체
  • 결측값 처리:
    • dropna() : 결측 행/열 제거
    • fillna() : 특정 값/방법으로 대체
  • 중복 처리:
    • duplicated() : 중복 여부 확인
    • drop_duplicates() : 중복 행 제거
  • 정렬: sort_values(by=..., ascending=...)

 


03. 데이터 구조 변환

  • 전치(Transpose): df.T
  • 피벗 테이블(pivot)
     
df.pivot(index='col1', columns='col2', values='col3')
  • melt: 열을 행으로 변환, 긴 형태 데이터 생성
  • crosstab: 범주형 변수 간 관계를 교차표로 요약

 

 

* 이 글은 제로베이스 데이터사이언스 파트타임 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다.


 

💡 생각 정리

데이터 필터링은 분석을 시작하기 전에 반드시 거쳐야 하는 과정이라는 점이 크게 와닿았다. loc와 iloc 인덱서를 통해 상황에 맞는 데이터를 선택하고, 조건 연산자를 활용해 원하는 행과 열만 추출하는 방법이 매우 실용적이라고 느꼈다. 또한 drop 메서드를 이용한 행과 열 제거는 불필요한 데이터를 정제하는 데 필수적이었다.

 

데이터 핸들링과 변환을 학습하면서는, 데이터를 확인하고 정리하는 과정이 분석 전체의 신뢰도를 좌우한다는 점을 알게 되었다. 결측값이나 중복값을 올바르게 처리하지 않으면 잘못된 결과가 나올 수 있기 때문에 이 부분의 중요성을 다시 깨달았다. 더불어 pivot, melt, crosstab 같은 구조 변환 기능을 통해 데이터를 다양한 형태로 바꿀 수 있어 분석과 시각화를 한층 유연하게 할 수 있다는 점이 흥미로웠다.


🚀 적용점

 

  • 조건 필터링으로 원하는 데이터만 추출해 빠르게 통계 분석 수행
  • 불필요한 열과 행을 제거하여 정제된 데이터셋 구축
  • 결측값과 중복값을 사전에 처리해 데이터 품질 개선
  • 새로운 파생 변수를 생성하여 분석의 깊이를 더하기
  • 피벗, melt, 교차표(crosstab)를 활용해 데이터 시각화와 보고서 작성에 활용

 

반응형