sabr3evaluation / utils.py
rkarthur's picture
Update utils.py
37c2038
raw
history blame
999 Bytes
import numpy as np
import pandas as pd
import streamlit as st
from settings import TEST_COLUMN_NAME, BETTER_COLUMN_NAME, GROUND_TRUTH_FILE
def validate_file(input_file):
if len(input_file) < 1:
st.write("No rows detected.")
return
if TEST_COLUMN_NAME not in input_file.columns.to_list():
st.write(f"No column named {TEST_COLUMN_NAME} in the file.")
st.write(f"Found these columns:{input_file.columns}")
return
else:
st.write("File loaded and confirmed.")
return True
def check_projections(projections):
ground_truth = pd.read_csv(GROUND_TRUTH_FILE)
checked_file = pd.merge(ground_truth, projections, how='left', on='bbref_id')
marcel_mean_absolute_error = np.nanmean(np.abs(checked_file['ops_pred'] - checked_file[TEST_COLUMN_NAME]))
better_mean_absolute_error = np.nanmean(np.abs(checked_file['ops_real'] - checked_file[BETTER_COLUMN_NAME]))
return marcel_mean_absolute_error, better_mean_absolute_error