Spaces:
Running
Running
open_dss (#7)
Browse files- Data page (5fc7ea786e94ca94fbc9c3aaf0b31ea7684ccf3c)
- Data page (2a09920256f166bd8803ae8c8967ca689130558a)
Co-authored-by: Fődi, Zoltán <fzoll@users.noreply.huggingface.co>
- app/backend/data_engine.py +16 -2
- app/backend/data_page.py +19 -8
app/backend/data_engine.py
CHANGED
|
@@ -113,6 +113,15 @@ class DataEngine:
|
|
| 113 |
for _, row in grouped_dataset_count.iterrows():
|
| 114 |
dataset_num_map[row["group_name"]] = row["dataset_name"]
|
| 115 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 116 |
grouped_model = df.groupby(["model_name", "group_name"]).agg({
|
| 117 |
"ndcg_at_10": "mean",
|
| 118 |
}).reset_index()
|
|
@@ -121,13 +130,18 @@ class DataEngine:
|
|
| 121 |
|
| 122 |
# Rename columns
|
| 123 |
pivot.columns = list(
|
| 124 |
-
map(lambda x: f"{x[1].capitalize()} Average ({dataset_num_map[x[1]]} datasets)" if x[
|
| 125 |
-
1] != 'text' else f"Average ({dataset_num_map[x[1]]} datasets)",
|
| 126 |
pivot.columns))
|
| 127 |
|
| 128 |
pivot_dataset = df_result.pivot(index="model_name", columns="dataset_name", values="ndcg_at_10")
|
| 129 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 130 |
df = pd.merge(df_model, pivot, on="model_name")
|
|
|
|
| 131 |
df = pd.merge(df, pivot_dataset, on="model_name")
|
| 132 |
|
| 133 |
if df.empty:
|
|
|
|
| 113 |
for _, row in grouped_dataset_count.iterrows():
|
| 114 |
dataset_num_map[row["group_name"]] = row["dataset_name"]
|
| 115 |
|
| 116 |
+
# Create a list of open datasets
|
| 117 |
+
open_datasets = []
|
| 118 |
+
for result in results_list:
|
| 119 |
+
if not result.get("is_closed", False):
|
| 120 |
+
open_datasets.append(result["dataset_name"])
|
| 121 |
+
|
| 122 |
+
# Count open datasets
|
| 123 |
+
open_dataset_count = len(open_datasets)
|
| 124 |
+
|
| 125 |
grouped_model = df.groupby(["model_name", "group_name"]).agg({
|
| 126 |
"ndcg_at_10": "mean",
|
| 127 |
}).reset_index()
|
|
|
|
| 130 |
|
| 131 |
# Rename columns
|
| 132 |
pivot.columns = list(
|
| 133 |
+
map(lambda x: f"{x[1].capitalize()} Average ({dataset_num_map[x[1]]} datasets)" if x[1] != 'text' else f"Average ({dataset_num_map[x[1]]} datasets)",
|
|
|
|
| 134 |
pivot.columns))
|
| 135 |
|
| 136 |
pivot_dataset = df_result.pivot(index="model_name", columns="dataset_name", values="ndcg_at_10")
|
| 137 |
|
| 138 |
+
# Calculate open average
|
| 139 |
+
open_df = df_result[df_result["dataset_name"].isin(open_datasets)]
|
| 140 |
+
open_avg = open_df.groupby("model_name")["ndcg_at_10"].mean().reset_index()
|
| 141 |
+
open_avg = open_avg.rename(columns={"ndcg_at_10": f"Open average ({open_dataset_count} datasets)"})
|
| 142 |
+
|
| 143 |
df = pd.merge(df_model, pivot, on="model_name")
|
| 144 |
+
df = pd.merge(df, open_avg, on="model_name")
|
| 145 |
df = pd.merge(df, pivot_dataset, on="model_name")
|
| 146 |
|
| 147 |
if df.empty:
|
app/backend/data_page.py
CHANGED
|
@@ -19,7 +19,6 @@ CELL_STYLE = {'fontSize': '18px'}
|
|
| 19 |
|
| 20 |
|
| 21 |
def is_section(group_name):
|
| 22 |
-
|
| 23 |
for k, v in LEADERBOARD_MAP.items():
|
| 24 |
leaderboard_name = v[0][0]
|
| 25 |
|
|
@@ -46,7 +45,7 @@ def render_page(group_name):
|
|
| 46 |
--theme-color: rgb(129, 150, 64);
|
| 47 |
--theme-color-light: rgba(129, 150, 64, 0.2);
|
| 48 |
}
|
| 49 |
-
|
| 50 |
/* AG Grid specific overrides */
|
| 51 |
.ag-theme-alpine {
|
| 52 |
--ag-selected-row-background-color: var(--theme-color-light) !important;
|
|
@@ -55,23 +54,23 @@ def render_page(group_name):
|
|
| 55 |
--ag-range-selection-border-color: var(--theme-color) !important;
|
| 56 |
--ag-range-selection-background-color: var(--theme-color-light) !important;
|
| 57 |
}
|
| 58 |
-
|
| 59 |
.ag-row-hover {
|
| 60 |
background-color: var(--theme-color-light) !important;
|
| 61 |
}
|
| 62 |
-
|
| 63 |
.ag-row-selected {
|
| 64 |
background-color: var(--theme-color-light) !important;
|
| 65 |
}
|
| 66 |
-
|
| 67 |
.ag-row-focus {
|
| 68 |
background-color: var(--theme-color-light) !important;
|
| 69 |
}
|
| 70 |
-
|
| 71 |
.ag-cell-focus {
|
| 72 |
border-color: var(--theme-color) !important;
|
| 73 |
}
|
| 74 |
-
|
| 75 |
/* Keep existing styles */
|
| 76 |
.center-text {
|
| 77 |
text-align: center;
|
|
@@ -144,6 +143,11 @@ def render_page(group_name):
|
|
| 144 |
df["Closed average"] = df[close_avg_list].mean(axis=1)
|
| 145 |
column_list.append("Closed average")
|
| 146 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 147 |
df = df[COLUMNS + column_list].sort_values(by=avg_column, ascending=False)
|
| 148 |
|
| 149 |
# setting column config
|
|
@@ -164,7 +168,7 @@ def render_page(group_name):
|
|
| 164 |
`<a href="${link}" target="_blank">${params.value}</a>` :
|
| 165 |
params.value;
|
| 166 |
}
|
| 167 |
-
|
| 168 |
getGui() {
|
| 169 |
return this.eGui;
|
| 170 |
}
|
|
@@ -176,6 +180,13 @@ def render_page(group_name):
|
|
| 176 |
'cellStyle': CELL_STYLE,
|
| 177 |
'suppressSizeToFit': True},
|
| 178 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 179 |
{'headerName': 'Closed average',
|
| 180 |
'field': 'Closed average',
|
| 181 |
'headerStyle': HEADER_STYLE,
|
|
|
|
| 19 |
|
| 20 |
|
| 21 |
def is_section(group_name):
|
|
|
|
| 22 |
for k, v in LEADERBOARD_MAP.items():
|
| 23 |
leaderboard_name = v[0][0]
|
| 24 |
|
|
|
|
| 45 |
--theme-color: rgb(129, 150, 64);
|
| 46 |
--theme-color-light: rgba(129, 150, 64, 0.2);
|
| 47 |
}
|
| 48 |
+
|
| 49 |
/* AG Grid specific overrides */
|
| 50 |
.ag-theme-alpine {
|
| 51 |
--ag-selected-row-background-color: var(--theme-color-light) !important;
|
|
|
|
| 54 |
--ag-range-selection-border-color: var(--theme-color) !important;
|
| 55 |
--ag-range-selection-background-color: var(--theme-color-light) !important;
|
| 56 |
}
|
| 57 |
+
|
| 58 |
.ag-row-hover {
|
| 59 |
background-color: var(--theme-color-light) !important;
|
| 60 |
}
|
| 61 |
+
|
| 62 |
.ag-row-selected {
|
| 63 |
background-color: var(--theme-color-light) !important;
|
| 64 |
}
|
| 65 |
+
|
| 66 |
.ag-row-focus {
|
| 67 |
background-color: var(--theme-color-light) !important;
|
| 68 |
}
|
| 69 |
+
|
| 70 |
.ag-cell-focus {
|
| 71 |
border-color: var(--theme-color) !important;
|
| 72 |
}
|
| 73 |
+
|
| 74 |
/* Keep existing styles */
|
| 75 |
.center-text {
|
| 76 |
text-align: center;
|
|
|
|
| 143 |
df["Closed average"] = df[close_avg_list].mean(axis=1)
|
| 144 |
column_list.append("Closed average")
|
| 145 |
|
| 146 |
+
# Add Open average to the column list if it's not already there
|
| 147 |
+
open_avg_col = next((col for col in df.columns if col.startswith("Open average")), None)
|
| 148 |
+
if open_avg_col and open_avg_col not in column_list:
|
| 149 |
+
column_list.append(open_avg_col)
|
| 150 |
+
|
| 151 |
df = df[COLUMNS + column_list].sort_values(by=avg_column, ascending=False)
|
| 152 |
|
| 153 |
# setting column config
|
|
|
|
| 168 |
`<a href="${link}" target="_blank">${params.value}</a>` :
|
| 169 |
params.value;
|
| 170 |
}
|
| 171 |
+
|
| 172 |
getGui() {
|
| 173 |
return this.eGui;
|
| 174 |
}
|
|
|
|
| 180 |
'cellStyle': CELL_STYLE,
|
| 181 |
'suppressSizeToFit': True},
|
| 182 |
|
| 183 |
+
# Add Open average column definition
|
| 184 |
+
{'headerName': open_avg_col if open_avg_col else 'Open average',
|
| 185 |
+
'field': open_avg_col if open_avg_col else 'Open average',
|
| 186 |
+
'headerStyle': HEADER_STYLE,
|
| 187 |
+
'cellStyle': CELL_STYLE,
|
| 188 |
+
'suppressSizeToFit': True},
|
| 189 |
+
|
| 190 |
{'headerName': 'Closed average',
|
| 191 |
'field': 'Closed average',
|
| 192 |
'headerStyle': HEADER_STYLE,
|