testbziiit / ODD.py
didierkouame's picture
Upload 2 files
9e693fe verified
#!/usr/bin/env python
# coding: utf-8
# In[1]:
#classifier les actions RSE selon la méthode des 17 critères
from data_manager import get_data
def classify_actions_ODD(data):
data, _ = get_data() # Récupérer les données depuis data_manager.py
criteria = {
"Pas de pauvreté": [],
"Faim « Zéro »": [],
"Bonne santé et bien-être": [],
"Éducation de qualité": [],
"Eau propre et assainissement": [],
"Énergie propre et d'un coût abordable": [],
"Travail décent et croissance économique": [],
"Industrie, Innovation et infrastructure":[],
"Inégalités réduites":[],
"Villes et communautés durable":[],
"Consommation et production responsables":[],
"Lutte contre les changements climatiques":[],
"Vie aquatique":[],
"Vie terrestre":[],
"Paix, justice et institutions efficaces":[],
"Partenariats pour la réalisation des objectifs":[],
"Autres": []
}
# Keywords pour les 17 critères
keywords = {
"Pas de pauvreté": ["pauvreté"],
"Faim « Zéro »": ["faim"],
"Bonne santé et bien-être": ["bonne santé", "santé", "bien-être"],
"Éducation de qualité": ["éducation de qualité", "éducation"],
"Eau propre et assainissement": ["eau","eau propre", "propre", "assainissement"],
"Énergie propre et d'un coût abordable": ["énergie","énergie propre","énergétique" ,"coût abordable"],
"Travail décent et croissance économique": ["travail", "travail décent", "croissance économique"],
"Industrie, Innovation et infrastructure":["industrie", "innovation", "innovation et infrastructure"],
"Inégalités réduites":["inégalités", "inégalités réduites"],
"Villes et communautés durable":["villes","villes et communautés durable"],
"Consommation et production responsables":["consommation", "consommation et production responsables"],
"Lutte contre les changements climatiques":["changements climatiques"],
"Vie aquatique":["vie aquatique", "milieu aquatique"],
"Vie terrestre":["vie terrestre"],
"Paix, justice et institutions efficaces":["paix", "justice", "institutions efficaces"],
"Partenariats pour la réalisation des objectifs":["partenariats"],
"Autres": []
}
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[4]:
data,_=get_data()
# In[5]:
classify_actions_ODD(data)
# In[119]:
# In[ ]:
# In[ ]:
# In[ ]:
# In[ ]:
# In[ ]: