cap_backend / utils /data_processing.py
logeswari's picture
msg
fd38566
import pandas as pd
def convert_dates(df, columns):
for col in columns:
if col in df.columns:
df[col] = pd.to_datetime(df[col], errors='coerce')
return df
def calculate_age(df, dob_col="DOB"):
if dob_col in df.columns:
df["Age"] = (pd.to_datetime("today") - df[dob_col]).dt.days // 365
return df
def clean_performance_score(df, col="Performance Score"):
score_map = {"Exceeds": 5, "Fully Meets": 4, "Needs Improvement": 3, "PIP": 2}
if col in df.columns:
df[col] = df[col].map(lambda x: score_map.get(str(x).strip(), None))
df[col] = pd.to_numeric(df[col], errors='coerce')
return df