Spaces:
No application file
No application file
#!/usr/bin/env python | |
# coding: utf-8 | |
# In[21]: | |
from data_manager import get_data | |
def classify_actions_rse_IMPACTSCORE(data): | |
data, _ = get_data() # Récupérer les données depuis data_manager.py | |
criteria = { | |
"Limitation des externalités négatives": [], | |
"Partage du pouvoir et de la valeur": [], | |
"Stratégie à impact": [], | |
"Autres": [] | |
} | |
keywords = { | |
"Limitation des externalités négatives":["externalités négatives"], | |
"Partage du pouvoir et de la valeur": [], | |
"Stratégie à impact": [], | |
} | |
for record in data: | |
action_rse = record.get("action_rse", "").lower() | |
company_info = { | |
"name": record.get("nom_courant_denomination", "N/A"), | |
"action_rse": action_rse, | |
"activity": record.get("libelle_section_naf", "N/A"), | |
"city": record.get("commune", "N/A") | |
} | |
found_category = False | |
for criterion, key_phrases in keywords.items(): | |
if any(key_phrase in action_rse for key_phrase in key_phrases): | |
criteria[criterion].append(company_info) | |
found_category = True | |
break # Assuming each action belongs to one category only | |
# Si l'action n'a pas été classifiée dans une catégorie existante, la placer dans "Autres" | |
if not found_category: | |
criteria["Autres"].append(company_info) | |
return criteria | |
# In[22]: | |
data,_=get_data() | |
# In[23]: | |
classify_actions_rse_IMPACTSCORE(data) | |
# In[ ]: | |
# In[ ]: | |