Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
Jan Mühlnikel
commited on
Commit
•
e22c7b1
1
Parent(s):
b199e73
show
Browse files- functions/filter_single.py +15 -2
- similarity_page.py +16 -3
functions/filter_single.py
CHANGED
@@ -5,5 +5,18 @@ def contains_code(crs_codes, code_list):
|
|
5 |
codes = str(crs_codes).split(';')
|
6 |
return any(code in code_list for code in codes)
|
7 |
|
8 |
-
def filter_projects(df,
|
9 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
codes = str(crs_codes).split(';')
|
6 |
return any(code in code_list for code in codes)
|
7 |
|
8 |
+
def filter_projects(df, country_code_list, orga_code_list):
|
9 |
+
# FILTER COUNTRY
|
10 |
+
if country_code_list != []:
|
11 |
+
country_filtered_df = pd.DataFrame()
|
12 |
+
for c in country_code_list:
|
13 |
+
c_df = df[df["country"].str.contains(c, na=False)]
|
14 |
+
country_filtered_df = pd.concat([country_filtered_df, c_df], ignore_index=False)
|
15 |
+
|
16 |
+
df = country_filtered_df
|
17 |
+
|
18 |
+
# FILTER ORGANIZATION
|
19 |
+
if orga_code_list != []:
|
20 |
+
df = df[df['orga_abbreviation'].isin(orga_code_list)]
|
21 |
+
|
22 |
+
return df
|
similarity_page.py
CHANGED
@@ -13,6 +13,7 @@ from sentence_transformers import SentenceTransformer
|
|
13 |
from modules.multimatch_result_table import show_multi_table
|
14 |
from modules.singlematch_result_table import show_single_table
|
15 |
from functions.filter_projects import filter_projects
|
|
|
16 |
from functions.calc_matches import calc_matches
|
17 |
from functions.same_country_filter import same_country_filter
|
18 |
from functions.single_similar import find_similar
|
@@ -239,7 +240,6 @@ def show_multi_matching_page():
|
|
239 |
orga_code_list = [option.split("(")[1][:-1].lower() for option in orga_option]
|
240 |
|
241 |
# FILTER DF WITH SELECTED FILTER OPTIONS
|
242 |
-
|
243 |
TOP_X_PROJECTS = 30
|
244 |
filtered_df = filter_projects(projects_df, crs3_list, crs5_list, sdg_str, country_code_list, orga_code_list, query, model, embeddings, TOP_X_PROJECTS)
|
245 |
if isinstance(filtered_df, pd.DataFrame) and len(filtered_df) != 0:
|
@@ -338,6 +338,19 @@ def show_single_matching_page():
|
|
338 |
selected_index = search_list.index(project_option)
|
339 |
st.dataframe(projects_df.iloc[selected_index])
|
340 |
|
341 |
-
|
342 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
343 |
|
|
|
13 |
from modules.multimatch_result_table import show_multi_table
|
14 |
from modules.singlematch_result_table import show_single_table
|
15 |
from functions.filter_projects import filter_projects
|
16 |
+
from functions.filter_single import filter_single
|
17 |
from functions.calc_matches import calc_matches
|
18 |
from functions.same_country_filter import same_country_filter
|
19 |
from functions.single_similar import find_similar
|
|
|
240 |
orga_code_list = [option.split("(")[1][:-1].lower() for option in orga_option]
|
241 |
|
242 |
# FILTER DF WITH SELECTED FILTER OPTIONS
|
|
|
243 |
TOP_X_PROJECTS = 30
|
244 |
filtered_df = filter_projects(projects_df, crs3_list, crs5_list, sdg_str, country_code_list, orga_code_list, query, model, embeddings, TOP_X_PROJECTS)
|
245 |
if isinstance(filtered_df, pd.DataFrame) and len(filtered_df) != 0:
|
|
|
338 |
selected_index = search_list.index(project_option)
|
339 |
st.dataframe(projects_df.iloc[selected_index])
|
340 |
|
341 |
+
# COUNTRY CODES LIST
|
342 |
+
country_code_list = [option[-3:-1] for option in country_option_s]
|
343 |
+
|
344 |
+
# ORGANIZATION CODES LIST
|
345 |
+
orga_code_list = [option.split("(")[1][:-1].lower() for option in orga_option_s]
|
346 |
+
|
347 |
+
TOP_X_PROJECTS = 10
|
348 |
+
filtered_df_s = filter_single(projects_df, country_code_list, orga_code_list)
|
349 |
+
st.dataframe(filtered_df_s)
|
350 |
+
|
351 |
+
#if isinstance(filtered_df_s, pd.DataFrame) and len(filtered_df_s) != 0:
|
352 |
+
|
353 |
+
|
354 |
+
#top_projects_df = find_similar(selected_index, sim_matrix, projects_df, 10)
|
355 |
+
#show_single_table(top_projects_df)
|
356 |
|