I valori all'interno di un telaio di dati o altri oggetti di panda possono essere sostituiti usando il metodo sostituito () in panda. In Python, possiamo utilizzare questo metodo per la manipolazione dei dati e la pulizia dei dati. Questo tutorial ti insegnerà come possiamo sostituire i valori o i dati dal determinato telaio utilizzando Pandas STR.Sostituisci () funzione. Nel frame dati, possiamo sostituire i dati di stringa e persino le espressioni regolari (REGEX) utilizzando il Frame dati Pandas.str.Sostituisci () funzione. Simile alla funzione di sostituzione () di Python, la STR.Il metodo di sostituzione () nei panda funziona anche su serie.
str.sostituire()
Il metodo str.Sostituisci () viene utilizzato per sostituire una stringa o regex con un valore di stringa o dati. La funzione sostitutiva () può sostituire qualsiasi cosa con qualsiasi altra cosa, anche le corde e il regex. Dai un'occhiata alla STR.Sostituisci () sintassi della funzione.
Sintassi
panda.Serie.str.Sostituisci (pat, repl, n = -1, case = nessuno, flags = 0, regex = nessuno)
Parametri:
- colpetto: compilato regex o str. Le espressioni regolari o le sequenze di caratteri possono essere entrambe usate come stringhe.
- REPL: callabile o STR. Sostituire stringa o calmabile. Una stringa di sostituzione deve essere restituita dal callabile per essere utilizzata dopo aver ricevuto l'oggetto Regex Match.
- N: Per impostazione predefinita, imposta come -1, int. Sostituzioni totali da effettuare.
- caso: Nessuno per impostazione predefinita, bool. Scopre se "sostituire" è sensibile al caso:
- Case sensibile, se vero.
- Per insensibilità al caso, impostato su False
- Se PAT è specificato come regex compilato, non può essere impostato.
- bandiere: 0 o nessuna flag per impostazione predefinita, int. Flag nel modulo regex, come re.Ignorecase. Se PAT è specificato come regex compilato, non può essere impostato.
- Regex: Vero per impostazione predefinita, bool. Identifica se un'espressione regolare è presente nel modello passato: se vero, il modello passato è considerato un'espressione regolare. Altrimenti, il modello viene trattato come una corda letterale.
Scenario 1: STR.Sostituisci () in DataFrame
Applicheremo questa funzione sulle colonne di dati Pandas per sostituire i valori singoli/più. Vedremo diversi esempi in questo scenario.
Sintassi:
Separare -
Dataframe_object ['colonna'].str.Sostituisci ("vecchio", "nuovo")
Multiplo-
Dataframe_object ['colonna'].Sostituisci ([vecchi valori ...], [nuovi valori ...])
Qui, vecchia è la stringa esistente e la nuova è la nuova stringa che sostituisce quella esistente.
Esempio 1: sostituire la singola stringa
In questo esempio, stiamo avendo un frame di dati denominato "record" che contengono "chimiche", "alfabeto" e "valenza" colonne. Sostituire "idrogeno" con "idrogeno chimico" nella colonna chimica.
Panda di importazione
Records = Panda.DataFrame ('Chemical': ['Hydrogen', 'Azoto', 'Oxygen', 'Hydrogen', 'Sodio'],
'Alphabet': ['Hy', 'N', 'O', 'Hy', 'Na'],
'Valency': [10, 2, 3, 4, 11])
stampa (record)
# Sostituire "idrogeno" con "idrogeno chimico" nella colonna chimica.
Records ['Chemical'] = Records ['Chemical'].str.sostituire(
'idrogeno', 'chimica idrogeno')
stampa()
stampa (record)
Produzione:
Spiegazione
Ci sono due stringhe con "idrogeno" nella colonna chimica. Quindi, entrambi sono stati sostituiti con "idrogeno chimico".
Esempio 2: sostituire il carattere singolo
In questo esempio, stiamo avendo un frame dati denominato "record" che contengono colonne "chimiche" e "alfabeto". Sostituire 'O' con “O” nella colonna Alphabet.
Panda di importazione
Records = Panda.DataFrame ('Chemical': ['Hydrogen', 'Azoto', 'Oxygen', 'Hydrogen'],
'Alphabet': ['Hy', 'n', 'o', 'no'])
stampa (record)
# Sostituisci 'O' con "O" nella colonna Alphabet.
Records ['Alphabet'] = Records ['Alphabet'].str.sostituire ('o', 'o')
stampa()
stampa (record)
Produzione:
Ci sono due caratteri nella colonna Alphabet. Quindi, entrambi sono stati sostituiti con "O".
Esempio 3: sostituire più stringhe
Sostituiamo "idrogeno" con "idrogeno", "ossigeno" con "ossia" e "zolfo" con "s" nella colonna chimica
Panda di importazione
Records = Panda.DataFrame ('Chemical': ['Hydrogen', 'Azoto', 'Oxygen', 'Hydrogen', 'Sulphur'],
'Alphabet': ['Hy', 'N', 'O', 'No', 'Sul'])
stampa (record)
# Sostituisci più valori alla volta.
Records ['Chemical'] = Records ['Chemical'].Sostituisci (['idrogeno', 'ossigeno', 'zolfo'], ['idrogeno', 'ossia', 's'])
stampa()
stampa (record)
Produzione:
Le stringhe "idrogeno" sono sostituite con "idrogeno", 1 "ossigeno" e "zolfo" sono sostituiti con "oxy" e "s".
Esempio 4: sostituire più stringhe usando il dizionario
Sostituiamo "idrogeno" con "acido" e "zolfo" con "base" nella colonna chimica
Panda di importazione
Records = Panda.DataFrame ('Chemical': ['Hydrogen', 'Azoto', 'Oxygen', 'Hydrogen', 'Sulphur'],
'Alphabet': ['Hy', 'N', 'O', 'No', 'Sul'])
stampa (record)
# Sostituisci più valori alla volta.
Records ['Chemical'] = Records ['Chemical'].Sostituisci ('idrogeno': 'acido', 'zolfo': 'base')
stampa()
stampa (record)
Produzione:
2 stringhe di idrogeno "vengono sostituite con" acido "e 1" zolfo "viene sostituito con" base ".
Scenario 2: STR.Sostituisci () in serie
Creiamo una serie di panda e sostituiamo le stringhe con nuove stringhe con un modello di regex. Possiamo specificare la sottostringa che deve essere sostituita all'interno del Re.Metodo Compile () e questo può essere passato all'interno del metodo Sostituisci () come primo parametro e nuova stringa come secondo parametro che sostituisce la sottostringa.
Sintassi:
Single - Series_Object.str.Sostituire (re.Compile ("vecchio)", nuovo ")
Qui, vecchia è la stringa esistente e la nuova è la nuova stringa che sostituisce quella esistente.
Esempio: sostituire la singola stringa
In questo esempio, stiamo avendo una serie chiamata "Record" che contiene 4 stringhe.
Sostituire la sottostringa - "Gen" con "e".
Panda di importazione
importazione re
# Crea serie Pandas con 4 corde
Record = Panda.Serie (["idrogeno", 'azoto', 'hy', 'n'])
# Sostituisci la sottostringa - "Gen" con "e".
Stampa (record.str.Sostituire (re.compile ("gen"), "e"))
stampa()
# Sostituisci la sottostringa - "Gen" con "e" ignorando il caso.
Stampa (record.str.Sostituire (re.Compile ("Gen", Flags = Re.Ignorecase), "e"))
Produzione:
Spiegazione
- Nel primo output, non ignoriamo la sensibilità al caso. Quindi, "Gen" e "Gen" sono diversi. Poiché "Gen" non esiste nella serie, non viene eseguita alcuna sostituzione.
- Nel secondo output, stiamo ignorando la sensibilità al caso impostando “Flags = Re.Ignorecase ". Quindi, "Gen" e "Gen" sono gli stessi. È sostituito con "e". Quindi, le stringhe aggiornate sono - "Hydroand" e "Nitroand".
Conclusione
Ti insegniamo come sostituire/sostituire i valori della stringa nei panda. Abbiamo discusso della sintassi della STR.Sostituisci () metodo per comprenderne la funzionalità. Abbiamo implementato alcuni esempi in questo tutorial per insegnare come sostituire i valori della stringa con i dati della stringa, sostituire un carattere particolare, sostituire una sequenza di sottostringo o caratteri con i valori della stringa e sostituire più stringhe dalla colonna di dati utilizzando STR.Sostituire () e sostituire () le funzioni. Inoltre, come sostituire le stringhe della serie usando Regex.