Post

Pandas 데이터 분석: 데이터 로드와 저장

Pandas를 활용한 데이터 로드와 저장 방법

Pandas는 다양한 파일 형식(CSV, Excel, JSON, SQL 등)에서 데이터를 불러오고 저장할 수 있는 강력한 기능을 제공합니다. 이번 글에서는 Pandas를 활용한 데이터 로드와 저장 방법을 살펴보겠습니다.

1. CSV 파일

1) CSV 파일 읽기

read_csv() 함수는 CSV 파일을 읽어서 DataFrame으로 변환합니다.

예제

1
2
3
4
5
import pandas as pd

# CSV 파일 읽기
df = pd.read_csv("data.csv")
print(df)

옵션 활용

1
2
3
4
5
6
7
8
# 특정 구분자 사용
df = pd.read_csv("data.csv", delimiter=";")

# 처음 몇 줄만 읽기
df = pd.read_csv("data.csv", nrows=5)

# 특정 열을 인덱스로 지정
df = pd.read_csv("data.csv", index_col="ID")
2) CSV 파일 저장

to_csv() 함수는 DataFrame을 CSV 파일로 저장합니다.

예제

1
2
3
4
5
6
# DataFrame 생성
data = {"Name": ["Alice", "Bob", "Charlie"], "Age": [25, 30, 35]}
df = pd.DataFrame(data)

# CSV 파일로 저장
df.to_csv("output.csv", index=False)

2. Excel 파일

1) Excel 파일 읽기

read_excel() 함수는 Excel 파일을 읽어옵니다.

예제

1
2
3
# Excel 파일 읽기
df = pd.read_excel("data.xlsx")
print(df)

옵션 활용

1
2
3
4
5
# 특정 시트 읽기
df = pd.read_excel("data.xlsx", sheet_name="Sheet1")

# 특정 열을 인덱스로 지정
df = pd.read_excel("data.xlsx", index_col="ID")
2) Excel 파일 저장

to_excel() 함수는 DataFrame을 Excel 파일로 저장합니다.

예제

1
2
# Excel 파일로 저장
df.to_excel("output.xlsx", index=False, sheet_name="Data")

3. JSON 파일

1) JSON 파일 읽기

read_json() 함수는 JSON 파일을 DataFrame으로 변환합니다.

예제

1
2
3
# JSON 파일 읽기
df = pd.read_json("data.json")
print(df)
2) JSON 파일 저장

to_json() 함수는 DataFrame을 JSON 파일로 저장합니다.

예제

1
2
# JSON 파일로 저장
df.to_json("output.json", orient="records")

4. SQL 데이터베이스

1) SQL 데이터 읽기

read_sql() 함수는 SQL 쿼리를 실행하고 데이터를 DataFrame으로 가져옵니다.

예제

1
2
3
4
5
6
7
8
import sqlite3

# SQLite 데이터베이스 연결
conn = sqlite3.connect("example.db")

# SQL 쿼리 실행
df = pd.read_sql("SELECT * FROM users", conn)
print(df)
2) SQL 데이터 저장

to_sql() 함수는 DataFrame을 SQL 테이블에 저장합니다.

예제

1
2
# DataFrame 저장
df.to_sql("users", conn, if_exists="replace", index=False)

5. 기타 파일 형식

Pandas는 CSV, Excel, JSON 외에도 다양한 파일 형식을 지원합니다.

파일 형식읽기 함수쓰기 함수
HTMLread_html()to_html()
Parquetread_parquet()to_parquet()
Featherread_feather()to_feather()
Pickleread_pickle()to_pickle()

예제

1
2
3
4
5
6
# HTML 파일 읽기
df_list = pd.read_html("https://example.com/table.html")

# Pickle 파일 저장 및 읽기
df.to_pickle("data.pkl")
df = pd.read_pickle("data.pkl")

6. 파일 로드와 저장의 팁

  1. 파일 크기 고려
    • 대용량 파일을 처리할 때는 chunksize 옵션을 사용하여 데이터를 나눠서 읽습니다.
      1
      2
      
      for chunk in pd.read_csv("large_file.csv", chunksize=1000):
        print(chunk.head())
      
  2. 효율적인 파일 형식 사용
    • 대규모 데이터는 Parquet이나 Feather와 같은 형식을 사용하면 성능이 향상됩니다.
  3. 파일 저장 경로 확인
    • 파일 저장 시 os.path를 활용하여 경로를 관리합니다.
      1
      2
      3
      
      import os
      path = os.path.join("data", "output.csv")
      df.to_csv(path)
      

정리

  • Pandas는 CSV, Excel, JSON, SQL 등 다양한 파일 형식을 쉽게 읽고 저장할 수 있는 도구를 제공합니다.
  • 각 파일 형식에 맞는 read_to_ 함수를 사용하여 데이터를 효율적으로 처리할 수 있습니다.
  • 파일 크기와 형식에 따라 적절한 옵션과 파일 형식을 선택하면 성능이 향상됩니다.

다음 글 예고:
Pandas로 데이터를 다루는 핵심 기능인 “데이터 선택 및 조작”을 다뤄보겠습니다!

This post is licensed under CC BY 4.0 by the author.