import pandas as pd """ Filter for the single project matching """ def contains_code(crs_codes, code_list): codes = str(crs_codes).split(';') return any(code in code_list for code in codes) def filter_single(df, country_code_list, orga_code_list, region_list): # FILTER COUNTRY if country_code_list: country_filtered_df = pd.DataFrame() for c in country_code_list: c_df = df[df["country"].str.contains(c, na=False)] country_filtered_df = pd.concat([country_filtered_df, c_df], ignore_index=False) df = country_filtered_df # FILTER REGION if region_list: df = df[df["region"].isin(region_list)] # FILTER ORGANIZATION if orga_code_list: df = df[df['orga_abbreviation'].isin(orga_code_list)] return df