Pandas Str remplacer

Pandas Str remplacer
Les valeurs au sein d'un dataframe ou d'autres objets de pandas peuvent être remplacés en utilisant la méthode Remplace () dans les pandas. Dans Python, nous pouvons utiliser cette méthode pour la manipulation des données et le nettoyage des données. Ce tutoriel vous apprendra comment nous pouvons remplacer les valeurs ou les données de la dataframe donnée à l'aide du pandas str.Remplacer () Fonction. Dans le DataFrame, nous pouvons remplacer les données de chaîne et même les expressions régulières (regex) en utilisant le Pandas DataFrame.Str.Remplacer () Fonction. Similaire à la fonction Remplace () de Python, le str.Remplacer () Méthode dans Pandas fonctionne également en série.

Str.remplacer()

La méthode str.Remplace () est utilisé pour remplacer une chaîne ou un regex par une valeur de chaîne ou des données. La fonction Remplace () peut remplacer n'importe quoi par n'importe quoi d'autre, également les cordes et les regex. Jetez un œil au str.remplacer la syntaxe de la fonction ().

Syntaxe

pandas.Série.Str.remplacer (pat, rep, n = -1, case = aucun, drapeau = 0, regex = aucun)

Paramètres:

  1. tapoter: Regex compilé ou STR. Des expressions ou des séquences de caractères régulières peuvent être utilisées comme chaînes.
  2. repeindre: callable ou str. Remplacer la chaîne ou appelable. Une chaîne de remplacement doit être renvoyée par le callable pour qu'il soit utilisé après avoir reçu l'objet de correspondance regex.
  3. n: Par défaut, définissez -1, int. Total des remplacements à effectuer.
  4. cas: Aucun par défaut, bool. Découvrez si «remplacer» est sensible à la casse:
    1. Casse sensible, si vrai.
    2. Pour l'insensibilité aux cas, réglé sur faux
    3. Si PAT est spécifié en tant que regex fois compilé, il ne peut pas être défini.
  5. drapeaux: 0 ou pas de drapeaux par défaut, int. Drapeaux dans le module regex, comme re.Ignorecase. Si PAT est spécifié en tant que regexxe compilé, il ne peut pas être réglé.
  6. expirat: Vrai par défaut, bool. Identifie si une expression régulière est présente dans le modèle passé: si vrai, le modèle passé est considéré comme une expression régulière. Sinon, le motif est traité comme une chaîne littérale.

Scénario 1: Str.Remplacer () dans dataframe

Nous appliquerons cette fonction sur les colonnes Pandas DataFrame pour remplacer des valeurs uniques / multiples. Nous verrons plusieurs exemples dans ce scénario.

Syntaxe:
Seul -

Dataframe_object ['colonne'].Str.remplacer («ancien», «nouveau»)

Plusieurs-

Dataframe_object ['colonne'].remplacer ([anciennes valeurs…], [nouvelles valeurs…])

Ici, l'ancien est la chaîne existante et la nouvelle chaîne qui remplace celle existante.

Exemple 1: remplacer une seule chaîne
Dans cet exemple, nous avons un dataframe nommé "enregistrements" qui contiennent "chimique", "Alphabet" et "Valency" colonnes. Remplacer «l'hydrogène» par «hydrogène chimique» dans la colonne chimique.

importer des pandas
Records = pandas.DataFrame ('Chemical': ['Hydrogène', 'Nitrogen', 'Oxygen', 'Hydrogène', 'Sodium'],
'Alphabet': ['hy', 'n', 'o', 'hy', 'na'],
«valence»: [10, 2, 3, 4, 11])
Imprimer (enregistrements)
# Remplacer «l'hydrogène» par «hydrogène chimique» dans la colonne chimique.
enregistre [«chimique»] = enregistre [«chimique»].Str.remplacer(
«hydrogène», «hydrogène chimique»)
imprimer()
Imprimer (enregistrements)

Sortir:

Explication
Il y a deux chaînes avec «l'hydrogène» dans la colonne chimique. Ainsi, les deux ont été remplacés par «hydrogène chimique».

Exemple 2: remplacer un seul caractère
Dans cet exemple, nous avons une dataframe nommée «enregistrements» qui contiennent des colonnes «chimiques» et «alphabet». Remplacez «O» par «O» dans la colonne d'alphabet.

importer des pandas
Records = pandas.DataFrame ('Chemical': ['hydrogène', 'azote', 'oxygène', 'hydrogène'],
'Alphabet': ['hy', 'n', 'o', 'no'])
Imprimer (enregistrements)
# Remplacer 'o' par "o" dans la colonne d'alphabet.
enregistre ['alphabet'] = enregistre ['alphabet'].Str.remplacer ('o', 'o')
imprimer()
Imprimer (enregistrements)

Sortir:

Il y a deux caractères dans la colonne d'alphabet. Ainsi, les deux ont été remplacés par «O».

Exemple 3: Remplacez plusieurs chaînes
Remplacez «l'hydrogène» par «l'hydrogène», «l'oxygène» par «oxy» et «soufre» par «s» dans la colonne chimique

importer des pandas
Records = pandas.DataFrame ('Chemical': ['Hydrogène', 'Nitrogen', 'Oxygen', 'Hydrogène', 'Sulfur'],
'Alphabet': ['hy', 'n', 'o', 'no', 'su'])
Imprimer (enregistrements)
# Remplacer plusieurs valeurs à la fois.
enregistre [«chimique»] = enregistre [«chimique»].remplacer ([«hydrogène», «oxygène», «soufre»], [«hydrogène», «oxy», «s»])
imprimer()
Imprimer (enregistrements)

Sortir:

2 Les cordes «hydrogène» sont remplacées par «l'hydrogène», 1 «oxygène» et «soufre» sont remplacés par «oxy» et «s».

Exemple 4: Remplacez plusieurs chaînes à l'aide du dictionnaire
Remplacez «l'hydrogène» par «acide» et «soufre» par «base» dans la colonne chimique

importer des pandas
Records = pandas.DataFrame ('Chemical': ['Hydrogène', 'Nitrogen', 'Oxygen', 'Hydrogène', 'Sulfur'],
'Alphabet': ['hy', 'n', 'o', 'no', 'su'])
Imprimer (enregistrements)
# Remplacer plusieurs valeurs à la fois.
enregistre [«chimique»] = enregistre [«chimique»].remplacer ('hydrogène': 'acide', 'Sulfur': 'Base')
imprimer()
Imprimer (enregistrements)

Sortir:

2 Les cordes «hydrogène» sont remplacées par «acide» et 1 «soufre» est remplacé par «base».

Scénario 2: str.Remplacer () en série

Créons une série Pandas et remplacez les chaînes par de nouvelles chaînes par un motif regex. Nous pouvons spécifier la sous-chaîne qui doit être remplacée à l'intérieur du RE.Méthode compile () et cela peut être passé à l'intérieur de la méthode Remplace () comme premier paramètre et nouvelle chaîne comme deuxième paramètre qui remplace la substrat.

Syntaxe:

Single - Series_Object.Str.remplacer (re.compiler («old)», «nouveau»)

Ici, l'ancien est la chaîne existante et la nouvelle chaîne qui remplace celle existante.

Exemple: remplacer une seule chaîne
Dans cet exemple, nous avons une série nommée «Record» qui contient 4 cordes.
Remplacez la sous-chaîne - «gen» par «et».

importer des pandas
Importer RE
# Créer une série Pandas avec 4 chaînes
enregistrement = pandas.Série (['hydrogène', 'azote', 'hy', 'n'])
# Remplacez la sous-chaîne - "gen" par "et".
imprimer (enregistrer.Str.remplacer (re.compiler ("gen"), "et"))
imprimer()
# Remplacez la sous-chaîne - "gen" par "et" en ignorant le cas.
imprimer (enregistrer.Str.remplacer (re.compiler ("gen", drapeaux = re.Ignorecase), "et"))

Sortir:

Explication

  1. Dans la première sortie, nous n'ignorons pas la sensibilité à la casse. Donc, «gen» et «gen» sont différents. Comme «gen» n'existe pas dans la série, aucun remplacement n'est effectué.
  2. Dans la deuxième sortie, nous ignorons la sensibilité de cas en définissant «drapeaux = re.Ignorecase ”. Donc, «gen» et «gen» sont les mêmes. Il est remplacé par «et». Par conséquent, les chaînes mises à jour sont - «Hydroand» et «Nitroand».

Conclusion

Nous vous apprenons à remplacer / remplacer les valeurs de chaîne dans Pandas. Nous avons discuté de la syntaxe du str.Remplacer la méthode pour comprendre sa fonctionnalité. Nous avons implémenté quelques exemples dans ce tutoriel pour vous apprendre à remplacer les valeurs de chaîne par des données de chaîne, à remplacer un caractère particulier, à remplacer une séquence de sous-chaîne ou de caractères par les valeurs de chaîne et remplacer plusieurs chaînes de la colonne DataFrame à l'aide de STR.remplacer () et remplacer () fonctions. Aussi, comment remplacer les chaînes de la série en utilisant Regex.