Ich habe dies:Extrahieren und Teilzeichenfolge ersetzt in einem Pandas Datenrahmen mit regex
Title
Num
0 <span class="o-label--tiny">VALEUR ÉNERGÉTIQUE</span>
1 <span class="o-label--tiny">PROTÉINES</span>
2 <span class="o-label--tiny">GLUCIDES</span>
<class 'pandas.core.frame.DataFrame'> Num Index(['Title'], dtype='object')
Dies ist, was ich will:
Title
Num
0 VALEUR ÉNERGÉTIQUE
1 PROTÉINES
2 GLUCIDES
Dies ist die regex ich entwickelt:
(<span class=\"o-label--tiny\">)([a-zA-Z]+\s*\w*)(</span>)
Testen es Ich sehe, dass es die gesamte anfängliche Zeichenfolge übereinstimmt und Gruppen für die verschiedenen Teilzeichenfolgen hat. Am Ende möchte ich Gruppe (2) in meiner Dataframe-Spalte. (Meine Beispiele unten zeigen die explizite Regex, aber ich habe diese auch mit dem re.compile-Ergebnis versucht, das nicht funktioniert, um mich zu meinem endgültigen Ergebnis zu bringen).
Dies ist, was ich versucht habe:
df['Title'] = df['Title'].replace({'<span class=\"o-label--tiny\">': ''}, inplace=True, regex=True)
Das Ergebnis:
Title
Num
0 None
1 None
2 None
Versuch Nummer 2:
df['Title'] = df['Title'].str.replace('<span class=\"o-label--tiny\">', repl = '')
Ergebnis Nummer 2:
Title
Num
0 NaN
1 NaN
2 NaN
Versuch Nummer 3:
df['Title'] = df[lambda df: df.columns[0]].str.extract('(>[a-zA-Z]+\s*\w*)', expand=False)
3:
Title
Num
0 NaN
1 NaN
2 NaN
Ich sehe wirklich nicht, was ich tue, falsch und jede Hilfe zu meinem gewünschten Ergebnis bekommen würde geschätzt. Vielen Dank!
Sie die Antwort schon geschrieben? – Dark
Ich wollte das als Kommentar hinzufügen. Du hast es bearbeitet. Ich lösche meine Antwort – Dark
@jezrael: Ich habe versucht, Code, aber keiner arbeitete für mich. Ich habe immer noch NaN anstelle der richtigen Saiten. ?? – ChiChi