J'essaie de remplacer la valeur de toutes les lignes avec laquelle contient une sous-chaîne particulière. Par exemple: dans la chaîne 'jusqu'à 20 ans ÃÂ (enfant, adulte)', j'essaie de rechercher des sous-chaînes "(enfant" et remplacer tout son occurrence avec seulement "enfant" p>
3 Réponses :
Vous pouvez utiliser masque a > series = series.mask(series.str.contains('(Child'), 'Child')
Si vous travaillez avec un fichier Dataframe Pandas pourrait regarder toutes les valeurs d'une colonne et demander si chaque entrée a la chaîne d'intérêt, puis remplacez ces lignes:
# Example df df = pd.DataFrame([{'a': 'This contains child', 'b': 1}, {'a': 'this does not', 'b': 5}]) rows_with_child = df.a.str.contains('child') df.loc[rows_with_child, 'a'] = 'child'
Voici un exemple de Pandas:
import pandas as pd pd.Series(['f.o', 'fuz', np.nan]).str.replace('f.', 'ba', regex=False)
Cela tourne o.f code> ->
BAO code>. Je pense qu'il veut
t.o code> ->
BA code>
Ouais ... Je ne suis pas clair à 100% de sa question.
Vous voulez donc supprimer "("? Quel est le résultat attendu?
On dirait que vous cherchez à créer une regex, mais ne sait pas où commencer. Veuillez vérifier Référence - Qu'est-ce que cette regex signifie ressource, elle a beaucoup de notes. Une fois que vous avez une expression prêt et que vous avez toujours des problèmes avec la solution, veuillez modifier la question avec les derniers détails et nous serons heureux de vous aider à résoudre le problème.