gonzalobenegas commited on
Commit
7ba6910
Β·
verified Β·
1 Parent(s): 08feb93

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -9
app.py CHANGED
@@ -3,18 +3,19 @@ import pandas as pd
3
 
4
  # Expanded dataframe with hidden columns
5
  leaderboard_df = (
6
- pd.read_csv("results.csv", usecols=["dataset", "modality", "model", "AUPRC", "se"])
7
- .rename(columns={"dataset": "Dataset", "modality": "Approach", "model": "Model"})
8
  .round(3)
9
  )
10
 
11
- def filter_leaderboard(dataset_choice, approach_choice):
12
  """Filter dataframe based on selections and drop filter columns"""
13
  filtered_df = leaderboard_df[
14
  (leaderboard_df['Dataset'] == dataset_choice) &
15
- (leaderboard_df['Approach'] == approach_choice)
 
16
  ]
17
- return filtered_df.drop(columns=['Dataset', 'Approach']).sort_values('AUPRC', ascending=False)
18
 
19
  with gr.Blocks(title="TraitGym Leaderboard") as demo:
20
  gr.Markdown("## πŸ† TraitGym Leaderboard")
@@ -30,25 +31,30 @@ with gr.Blocks(title="TraitGym Leaderboard") as demo:
30
  value="Zero-shot",
31
  label="Select Approach"
32
  )
 
 
 
 
 
33
 
34
  leaderboard = gr.Dataframe(
35
- headers=["Model", "AUPRC", "se"],
36
  datatype=["str", "number", "number"],
37
  interactive=False,
38
  )
39
 
40
  # Connect filters to update the table
41
- for filter in [dataset_filter, approach_filter]:
42
  filter.change(
43
  fn=filter_leaderboard,
44
- inputs=[dataset_filter, approach_filter],
45
  outputs=leaderboard
46
  )
47
 
48
  # Initial load
49
  demo.load(
50
  fn=filter_leaderboard,
51
- inputs=[dataset_filter, approach_filter],
52
  outputs=leaderboard
53
  )
54
 
 
3
 
4
  # Expanded dataframe with hidden columns
5
  leaderboard_df = (
6
+ pd.read_csv("results.csv", usecols=["dataset", "modality", "model", "score", "se", "metric"])
7
+ .rename(columns={"dataset": "Dataset", "modality": "Approach", "model": "Model", "metric": "Metric"})
8
  .round(3)
9
  )
10
 
11
+ def filter_leaderboard(dataset_choice, approach_choice, metric_choice):
12
  """Filter dataframe based on selections and drop filter columns"""
13
  filtered_df = leaderboard_df[
14
  (leaderboard_df['Dataset'] == dataset_choice) &
15
+ (leaderboard_df['Approach'] == approach_choice) &
16
+ (leaderboard_df['Metric'] == metric_choice)
17
  ]
18
+ return filtered_df.drop(columns=['Dataset', 'Approach', 'Metric']).sort_values('score', ascending=False)
19
 
20
  with gr.Blocks(title="TraitGym Leaderboard") as demo:
21
  gr.Markdown("## πŸ† TraitGym Leaderboard")
 
31
  value="Zero-shot",
32
  label="Select Approach"
33
  )
34
+ metric_filter = gr.Radio(
35
+ choices=["AUPRC", "AUPRC_by_chrom_weighted_average"],
36
+ value="AUPRC",
37
+ label="Select Metric"
38
+ )
39
 
40
  leaderboard = gr.Dataframe(
41
+ headers=["Model", "score", "se"],
42
  datatype=["str", "number", "number"],
43
  interactive=False,
44
  )
45
 
46
  # Connect filters to update the table
47
+ for filter in [dataset_filter, approach_filter, metric_filter]:
48
  filter.change(
49
  fn=filter_leaderboard,
50
+ inputs=[dataset_filter, approach_filter, metric_filter],
51
  outputs=leaderboard
52
  )
53
 
54
  # Initial load
55
  demo.load(
56
  fn=filter_leaderboard,
57
+ inputs=[dataset_filter, approach_filter, metric_filter],
58
  outputs=leaderboard
59
  )
60