""" Excel 파일을 CSV 형식으로 변환하는 스크립트 """ import pandas as pd import os from datetime import datetime # 디렉토리 설정 data_dir = r'c:\Users\korea\Desktop\dacon_broadcast_paper\data' output_dir = r'c:\Users\korea\Desktop\dacon_broadcast_paper\data_csv' # 출력 디렉토리 생성 if not os.path.exists(output_dir): os.makedirs(output_dir) print(f"CSV 출력 디렉토리 생성: {output_dir}") # 변환할 파일 목록 files = [ 'article_metrics_monthly.xlsx', 'contents.xlsx', 'demographics_part001.xlsx', 'demographics_part002.xlsx', 'referrer.xlsx' ] print("=" * 80) print("Excel → CSV 변환 시작") print("=" * 80) for file in files: start_time = datetime.now() file_path = os.path.join(data_dir, file) csv_filename = file.replace('.xlsx', '.csv') csv_path = os.path.join(output_dir, csv_filename) print(f"\n[처리 중] {file}") try: # Excel 파일 읽기 df = pd.read_excel(file_path) # CSV로 저장 (UTF-8 with BOM for Excel compatibility) df.to_csv(csv_path, index=False, encoding='utf-8-sig') # 처리 시간 계산 elapsed = (datetime.now() - start_time).total_seconds() # 결과 출력 print(f" ✓ 완료: {csv_filename}") print(f" - 행 개수: {len(df):,}") print(f" - 열 개수: {len(df.columns)}") print(f" - 처리 시간: {elapsed:.2f}초") print(f" - 저장 경로: {csv_path}") except Exception as e: print(f" ✗ 오류 발생: {str(e)}") # demographics 파일 병합 (선택사항) print("\n" + "=" * 80) print("[추가 작업] demographics 파일 병합") print("=" * 80) try: demo_part1 = pd.read_csv(os.path.join(output_dir, 'demographics_part001.csv')) demo_part2 = pd.read_csv(os.path.join(output_dir, 'demographics_part002.csv')) # 두 파일 병합 demographics_merged = pd.concat([demo_part1, demo_part2], ignore_index=True) # 병합된 파일 저장 merged_path = os.path.join(output_dir, 'demographics_merged.csv') demographics_merged.to_csv(merged_path, index=False, encoding='utf-8-sig') print(f"✓ demographics 병합 완료") print(f" - 총 행 개수: {len(demographics_merged):,}") print(f" - 저장 경로: {merged_path}") except Exception as e: print(f"✗ 병합 중 오류 발생: {str(e)}") print("\n" + "=" * 80) print("모든 변환 작업 완료!") print("=" * 80)