diff --git a/data_processor.py b/data_processor.py index 717c8b94..6ee3864d 100644 --- a/data_processor.py +++ b/data_processor.py @@ -5922,12 +5922,19 @@ class DataProcessor: f"FEHLER: Spalte '{branche_col_internal}' (aus 'Chat Vorschlag Branche') nicht im DataFrame gefunden.") return None - # Normalisiere die Branchennamen aus dem Sheet für das Mapping - normalized_sheet_branches = df_filtered[branche_col_internal].apply( - normalize_for_mapping) +# Verwende die CRM Branche als Basis für die Gruppierung + branche_col_internal = "branche_crm" # NEU: Wir verwenden die CRM-Branche als Feature + self.logger.info( + f"Verarbeite kategoriales Feature '{branche_col_internal}' und mappe es zu 'Branchen_Gruppe'...") - # Wende das hartcodierte Mapping aus der Config-Klasse an - df_filtered.loc[:, 'Branchen_Gruppe'] = normalized_sheet_branches.map( + if branche_col_internal not in df_filtered.columns: + self.logger.critical( + f"FEHLER: Spalte '{branche_col_internal}' nicht im DataFrame gefunden.") + return None + + # Wende das saubere Mapping aus der Config an. Die Schlüssel sind jetzt lesbar. + # Wir müssen die Eingabedaten aus dem Sheet NICHT MEHR normalisieren. + df_filtered.loc[:, 'Branchen_Gruppe'] = df_filtered[branche_col_internal].map( Config.BRANCH_GROUP_MAPPING).fillna('Sonstige') self.logger.info("Mapping zu 'Branchen_Gruppe' durchgeführt.")