본문 바로가기

언어/Python

[ Python ] Pandas 기본 사용하기

반응형

Pandas는 Python에서 데이터를 조작하고 분석하는 데 매우 유용한 라이브러리입니다. 주로 구조화된 데이터를 처리하는 데 사용되며, 특히 데이터 프레임(DataFrame)과 시리즈(Series)를 사용한 데이터 분석 작업에 탁월한 성능을 제공합니다. 아래는 Pandas에 대한 주요 개념과 특징입니다.


1. Pandas의 주요 데이터 구조

  • Series: 1차원 배열로, 인덱스를 가지고 있습니다. 리스트나 1차원 배열과 유사합니다.
  import pandas as pd
  s = pd.Series([1, 2, 3, 4])
  print(s)
  • DataFrame: 2차원 구조로, 행(row)과 열(column)을 가지며, 테이블 형식의 데이터를 다룰 수 있습니다.
  data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
  df = pd.DataFrame(data)
  print(df)

2. Pandas의 주요 기능

  • 데이터 읽기/쓰기: CSV, Excel, SQL, JSON 등의 다양한 형식의 파일 입출력을 지원합니다.
  df = pd.read_csv('data.csv')  # CSV 파일 읽기
  df.to_csv('output.csv')      # CSV 파일로 저장
  • 데이터 탐색:
    • head(), tail(): 데이터의 앞부분 또는 뒷부분 확인
    • info(): 데이터 구조 정보 확인
    • describe(): 기본 통계 요약 제공
  print(df.head())
  print(df.info())
  print(df.describe())
  • 데이터 필터링 및 선택:
    • 특정 행/열 선택
    • 조건에 따라 데이터 필터링
  filtered = df[df['Age'] > 30]  # 'Age'가 30 이상인 행 선택
  • 데이터 정리 및 변환:
    • 결측값 처리: isnull(), fillna(), dropna()
    • 데이터 정렬: sort_values()
    • 데이터 집계 및 그룹화: groupby(), agg()
  grouped = df.groupby('Age').mean()  # 'Age'를 기준으로 그룹화 후 평균 계산

3. Pandas를 사용하는 이유

  1. 다양한 데이터 소스 지원: Pandas는 CSV, Excel, SQL, JSON 등 다양한 파일 형식을 쉽게 읽고 쓸 수 있습니다.
  2. 강력한 데이터 처리 기능: 결측값 처리, 데이터 정렬, 그룹화, 피벗 테이블 등 강력한 기능을 제공합니다.
  3. 사용하기 쉬운 API: 직관적인 함수 이름과 인덱싱 방식을 통해 데이터 작업을 빠르고 간단하게 수행할 수 있습니다.
  4. Python 생태계와의 통합: NumPy, Matplotlib, Scikit-learn 등과 쉽게 통합할 수 있어 데이터 분석 워크플로우에서 중심적인 역할을 합니다.

4. Pandas 설치

Pandas는 pip를 사용하여 설치할 수 있습니다.

pip install pandas

5. 기본 사용 예시

import pandas as pd

# 데이터프레임 생성
data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}
df = pd.DataFrame(data)

# 데이터 탐색
print(df.head())  # 데이터프레임의 상위 5개 행 출력
print(df.describe())  # 기본 통계 요약

# 데이터 필터링
filtered_df = df[df['Age'] > 30]
print(filtered_df)

# 새로운 열 추가
df['Is_Adult'] = df['Age'] > 18
print(df)

Pandas는 데이터 분석을 위한 핵심 도구로, 데이터를 직관적이고 효율적으로 다룰 수 있게 해줍니다.

반응형