Kevin Xie commited on
Commit ·
518d9c9
1
Parent(s): e2bcb05
Update filter to update rank with each filter selection
Browse files- utils/filter_manager.py +11 -0
utils/filter_manager.py
CHANGED
|
@@ -132,6 +132,7 @@ class FilterManager:
|
|
| 132 |
# If no filters are applied, reset to original performance
|
| 133 |
if self.is_empty(self.filter_states[leaderboard_type]):
|
| 134 |
df["Average Performance"] = self.data_loader.get_original_performance(leaderboard_type)
|
|
|
|
| 135 |
return df
|
| 136 |
|
| 137 |
# Get filtered columns
|
|
@@ -146,6 +147,16 @@ class FilterManager:
|
|
| 146 |
# Map the values to the 'Average Performance' column based on index
|
| 147 |
df["Average Performance"] = df.index.map(updated_performance_int)
|
| 148 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 149 |
# Return dataframe with filtered columns
|
| 150 |
base_columns = ['T', 'Model', 'Model: Domain', 'Model: Accessibility', 'Model: Size Range', 'Size (B)', 'Average Performance']
|
| 151 |
return df[base_columns + filtered_cols]
|
|
|
|
| 132 |
# If no filters are applied, reset to original performance
|
| 133 |
if self.is_empty(self.filter_states[leaderboard_type]):
|
| 134 |
df["Average Performance"] = self.data_loader.get_original_performance(leaderboard_type)
|
| 135 |
+
# Reset T column to original values when no filters are applied
|
| 136 |
return df
|
| 137 |
|
| 138 |
# Get filtered columns
|
|
|
|
| 147 |
# Map the values to the 'Average Performance' column based on index
|
| 148 |
df["Average Performance"] = df.index.map(updated_performance_int)
|
| 149 |
|
| 150 |
+
# Update T column to reflect new ranking based on filtered average performance
|
| 151 |
+
# Sort by Average Performance in descending order and assign ranks 1, 2, 3, etc.
|
| 152 |
+
df_sorted = df.sort_values(by="Average Performance", ascending=False, na_position='last')
|
| 153 |
+
rank_mapping = {}
|
| 154 |
+
for rank, idx in enumerate(df_sorted.index):
|
| 155 |
+
rank_mapping[idx] = rank + 1
|
| 156 |
+
|
| 157 |
+
# Apply the new ranking to the T column
|
| 158 |
+
df["T"] = df.index.map(rank_mapping)
|
| 159 |
+
|
| 160 |
# Return dataframe with filtered columns
|
| 161 |
base_columns = ['T', 'Model', 'Model: Domain', 'Model: Accessibility', 'Model: Size Range', 'Size (B)', 'Average Performance']
|
| 162 |
return df[base_columns + filtered_cols]
|