파이썬 여러 CSV 파일 하나로 합치기는 실무에서 자주 쓰는 작업이다.
날짜별로 나뉜 파일이나 폴더별로 흩어진 데이터를 하나로 모을 때 특히 유용하다.
한 번 방법을 익혀두면 반복 업무 시간을 많이 줄일 수 있다.
- 기본 예제
아래 코드는 현재 폴더의 CSV 파일을 모두 읽어서 merged.csv 하나로 저장한다.
import os
import csv
folder_path = "."
csv_files = [name for name in os.listdir(folder_path) if name.endswith(".csv") and name != "merged.csv"]
header_saved = False
with open("merged.csv", "w", newline="", encoding="utf-8-sig") as out_file:
writer = csv.writer(out_file)
for csv_name in csv_files:
with open(csv_name, "r", newline="", encoding="utf-8-sig") as in_file:
reader = csv.reader(in_file)
header = next(reader)
if not header_saved:
writer.writerow(header)
header_saved = True
for row in reader:
writer.writerow(row)
print("merged.csv 저장 완료")
- 코드 흐름 정리
- 현재 폴더에서 csv 파일 목록을 가져온다.
- 결과 파일인 merged.csv는 목록에서 제외한다.
- 첫 번째 파일의 제목 행만 한 번 저장한다.
- 그다음부터는 데이터 행만 계속 추가한다.
- 이런 경우에 특히 유용하다
날짜별 주문 데이터 합치기
월별 매출 파일 합치기
크롤링 결과 여러 개를 한 파일로 모으기
로그 파일 요약 전 데이터 통합하기
- 주의할 점
- 모든 CSV 열 구조가 같아야 한다.
- 인코딩이 다르면 읽기 오류가 날 수 있다.
- 제목 행을 중복 저장하지 않도록 처리해야 한다.
- 정리하며
파이썬 여러 CSV 파일 하나로 합치기는 csv 모듈과 파일 목록 처리만 알면 충분히 구현할 수 있다.
반복 데이터 정리에 매우 유용하므로 파일 자동화를 할 계획이라면 꼭 익혀둘 만한 주제다.
'Phython > Python 파일처리' 카테고리의 다른 글
| [파이썬 파일처리] 파이썬 파일명 일괄 변경, 여러 파일 이름 한 번에 바꾸기 (1) | 2026.04.01 |
|---|---|
| [파이썬 파일처리] 파이썬 폴더 내 파일 목록 가져오기, 파일명 리스트 출력하기 (0) | 2026.03.31 |
| [파이썬 파일처리] 파이썬 JSON 파일 읽고 저장하기, 딕셔너리 파일로 저장하는 방법 (0) | 2026.03.30 |
| [파이썬 파일처리] 파이썬 TXT 파일 읽기와 쓰기, 메모장 파일 다루기 (0) | 2026.03.27 |
| [파이썬 파일처리] 파이썬 한글 CSV 깨짐 해결, utf-8 cp949 차이 정리 (1) | 2026.03.26 |
