크롤링 등을 작업을 마치고 나면 그 결과값을 누적해서 저장하고 싶을 경우가 있습니다. 이번 시간에는 .to_csv 메서드를 활용해서 누적 저장하는 방법을 알아보겠습니다.
to_csv Append Mode 사용하기
import pandas as pd
import os
# 샘플 데이터 생성
soda = {'상품명': ['콜라', '사이다'], '가격': [2700, 2000]}
df = pd.DataFrame(soda)
# .to_csv
# 최초 생성 이후 mode는 append
if not os.path.exists('output.csv'):
df.to_csv('output.csv', index=False, mode='w', encoding='utf-8-sig')
else:
df.to_csv('output.csv', index=False, mode='a', encoding='utf-8-sig', header=False)
encoding='utf-8' 사용시 한글깨짐 현상이 발생하여, 'utf-8-sig'를 사용하였습니다. utf-8-sig에 관한 더 자세한 내용은 링크를 참고해주세요.
결과값 최초 저장시
최초 저장 이후
결과값이 누적되어 잘 정리된 것을 볼 수 있습니다. 이런 저장방식은 특히 스크래핑/크롤링 결과를 저장하는데 유용하게 활용할 수 있습니다. 이렇게 데이터 정리가 잘 되어있으면 간단한 그래프만 그려도 트렌드 파악이 가능하다는 장점이 있습니다.
-이 글은 아나콘다(Anaconda3)가 설치된 환경을 기준으로 작성되었습니다.