Utiliser la fonction split

Résolu
Bonjour,
j'ai une colonne('Date de l'experience') d'un Data Frame (df2) dans laquelle se trouve pour chaque ligne de la colonne : "Date de l'expérience: DATE" par exemple: "Date de l'expérience: 13 mai 2022".

Je souhaite garder que la date et donc retirer 'Date de l'expérience:".

Pour cela j'utilise :

df2["Date de l'experience"]=df2["Date de l'experience"].apply(lambda x:x.split("Date de l'expérience:"))


Sauf que le résultat de ma colonne devient "[, 18 mai 2022]".
Entre autres j'ai [,] en trop. Pourquoi ? et comment résoudre le pb s'il vous plait ?

Configuration: Windows / Chrome 101.0.4951.67

2 réponses

  1. Modérateur
    Cela ne fonctionne donc pas comme string.replace() le df.replace() doit remplacer si égalité en totalité, pas une partie.

    voir : https://stackoverflow.com/questions/42331992/replace-part-of-the-string-in-pandas-data-frame

    alors essayer
    df2['Date de l'expérience']=df2['Date de l'expérience'].replace(to_replace="Date de l'expérience: ",value="", regex=True)


    ou
    df2['Date de l'expérience']=df2['Date de l'expérience'].str.replace("Date de l'expérience: ", "")


    1
    1. Le premier code a fonctionné. Merci beaucoup pour votre aide !
      0
  2. Modérateur
    Bonjour,

    .split()
    crée un tableau en utilisant le paramètre comme séparateur, dans ton cas le résultat c'est
    ['', ' 13 mai 2022'] 
    une valeur vide, la date

    tu devrais utiliser la méthode
    .replace()
    :
    .replace("Date de l'expérience: ","")
    qui dans la chaine remplace la valeur donnée par rien.
    0
    1. Merci pour ta réponse !

      Malheureusement lorsque j'utilise la methode replace je n'ai aucun changement le df reste le meme :

      df2['Date de l'expérience']=df2['Date de l'expérience'].replace(to_replace=["Date de l'expérience: "],value=[""])
      0
    2. @jee peeça revient au même :'(
      0