si d'autre dans pyspark pour l'effondrement des valeurs de la colonne

Je suis en train d'essayer un simple code à l'effondrement de mon variables catégorielles dans dataframe binaire, les classes après l'indexation
actuellement ma colonne a 3 classes "A","B","C"
Je suis en train d'écrire une simple instruction if else à l'effondrement des classes comme

def condition(r):
if (r.wo_flag=="SLM" or r.wo_flag=="NON-SLM"):
    r.wo_flag="dispatch" 
else: 
    r.wo_flag="non_dispatch" 
return r.wo_flag 

df_final=df_new.map(lambda x: condition(x)) 

Sa ne fonctionne pas, il ne comprend pas la condition else

|MData|Recode12|Status|DayOfWeekOfDispatch|MannerOfDispatch|Wo_flag|PlaceOfInjury|Race|
     M|      11|     M|                  4|               7|      C|           99| 1  |    
     M|       8|     D|                  3|               7|      A|           99| 1  |
     F|      10|     W|                  2|               7|      C|           99| 1  |
     M|       9|     D|                  1|               7|      B|           99| 1  |
     M|       8|     D|                  2|               7|      C|           99| 1  |

C'est l'Échantillon de Données

  • Êtes-vous essayer de remplacer l'apparition de 'A' ,'B' à 'envoi' et 'C' avec 'non_dispatch" dans wo_flag de la colonne ?
  • L'ajout de certaines données-échantillon (ce qui df ressemble), avec le message d'erreur complet, va nous aider à vous aider.
  • Oui c'est ce que je veux faire j'ai aussi attaché que DF ressemble