""" Script to rename additional defense CSV column headers. """ import pandas as pd import os # Column mapping COLUMN_MAPPING = { 'Fld%': 'fielding_perc', 'Rtot': 'tz_runs_total', 'Rtot/yr': 'tz_runs_total_per_season', 'Rtz': 'tz_runs_field', 'Rdp': 'tz_runs_infield' } # Directory with defense files DATA_DIR = 'data-input/2005 Live Cardset/' # All defense files DEFENSE_FILES = [ 'defense_c.csv', 'defense_1b.csv', 'defense_2b.csv', 'defense_3b.csv', 'defense_ss.csv', 'defense_lf.csv', 'defense_cf.csv', 'defense_rf.csv', 'defense_of.csv', 'defense_p.csv' ] print("Renaming additional defense CSV columns...") print(f"Column mappings:") for old, new in COLUMN_MAPPING.items(): print(f" {old} -> {new}") print() for filename in DEFENSE_FILES: filepath = os.path.join(DATA_DIR, filename) if not os.path.exists(filepath): print(f"⚠ Skipping {filename} (not found)") continue # Read CSV df = pd.read_csv(filepath) # Track which columns were renamed renamed = [] for old_col, new_col in COLUMN_MAPPING.items(): if old_col in df.columns: renamed.append(f"{old_col} -> {new_col}") # Rename columns df = df.rename(columns=COLUMN_MAPPING) # Save back df.to_csv(filepath, index=False) if renamed: print(f"āœ“ {filename}: Renamed {len(renamed)} columns") for r in renamed: print(f" {r}") else: print(f" {filename}: No matching columns found") print("\nāœ“ All defense files processed successfully!")