The_GOAT_app / app.py
lbourdois's picture
Update app.py
c01b0e6 verified
import gradio as gr
import pandas as pd
def read_file():
df = pd.read_csv("./data.csv")
return df
def count_names(df):
chris_count = (df["First"] == "Chris").sum()
loick_count = (df["First"] == "Loïck").sum()
return chris_count, loick_count
def determine_goat(chris_count, loick_count):
if chris_count > loick_count:
return "The current GOAT is: Chris"
elif loick_count > chris_count:
return "The current GOAT is: Loïck"
else:
return "The current GOAT is: It's a tie between Chris and Loïck"
def process_file():
df = read_file()
chris_count, loick_count = count_names(df)
goat = determine_goat(chris_count, loick_count)
return df, f"Chris count: {chris_count}, Loïck count: {loick_count}", goat
with gr.Blocks() as demo:
gr.Markdown("# Leaderboard")
gr.Markdown(
"App to find out whether Chris or Loïck is the person who finds the most stuff on Hugging Face in advance. "
"Whoever finds the most by December 31, 2025, will be declared the GOAT and owe the other an O'Tacos."
)
process_btn = gr.Button("Process data history")
df_output = gr.DataFrame(label="DataFrame")
count_output = gr.Textbox(label="Counts 🧮")
goat_output = gr.Textbox(label="Current GOAT 🐐")
process_btn.click(
fn=process_file,
outputs=[df_output, count_output, goat_output]
)
demo.launch()