Pandas DataFrame DataFrame.replace() Função
-
Sintaxe de
pandas.DataFrame.replace()
: -
Códigos de exemplo: Substitui valores em DataFrame utilizando
pandas.DataFrame.replace()
-
Códigos de exemplo: Substituir vários valores no DataFrame utilizando
pandas.DataFrame.replace()
pandas.DataFrame.replace()
substitui os valores em DataFrame por outros valores, que podem ser string, regex, lista, dicionário, Series
, ou um número.
Sintaxe de pandas.DataFrame.replace()
:
DataFrame.replace(,
to_replace=None,
value=None,
inplace=False,
limit=None,
regex=False,
method='pad')
Parâmetros
to_replace |
string, regex, lista, dicionário, série, numérica, ou None . Valores em DataFrame que precisam de ser substituídos |
value |
escalar, ditado, lista, cordel, regex, ou Nenhum. Valor para substituir quaisquer valores correspondentes a_substituir por |
inplace |
Booleano. Se True modificar o autor da chamada DataFrame . |
limit |
Inteiro. Tamanho máximo a preencher para a frente ou para trás |
regex |
Booleano. Definir regex para True se to_replace e/ou value for uma regex |
method |
Método utilizado para substituição |
Devolver
Retorna um DataFrame
substituindo todos os campos especificados por um dado value
.
Códigos de exemplo: Substitui valores em DataFrame utilizando pandas.DataFrame.replace()
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [4, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace(1, 5)
print("After Replacement")
print(replaced_df)
Resultado:
Before Replacement
X Y
0 1 4
1 2 1
2 3 8
After Replacement
X Y
0 5 4
1 2 5
2 3 8
Aqui, 1
representa o parâmetro to_replace
e 5
representa o parâmetro value
no método replace()
. Assim, todas as entradas com o valor 1
são substituídas por 5
no parâmetro df
.
Códigos de exemplo: Substituir vários valores no DataFrame utilizando pandas.DataFrame.replace()
Substituir Listas de Utilização
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [4, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace([1,2,3],[1,4,9])
print("After Replacement")
print(replaced_df)
Resultado:
Before Replacement
X Y
0 1 4
1 2 1
2 3 8
After Replacement
X Y
0 1 4
1 4 1
2 9 8
Aqui, [1,2,3]
representa o parâmetro to_replace
e [1,4,9]
representa o parâmetro value
no método replace()
. Assim, a coluna [1,2,3]
é substituída por [1,4,9]
no df
.
Substituir Utilizando Dicionários
import pandas as pd
df = pd.DataFrame({'X': [1, 2, 3,],
'Y': [3, 1, 8]})
print("Before Replacement")
print(df)
replaced_df=df.replace({1:10,3:30})
print("After Replacement")
print(replaced_df)
Resultado:
Before Replacement
X Y
0 1 3
1 2 1
2 3 8
After Replacement
X Y
0 10 30
1 2 10
2 30 8
Substitui todos os elementos com o valor 1
por 10
e todos os elementos com o valor 3
por 30
.
Substitui utilizando Regex
import pandas as pd
df = pd.DataFrame({'X': ["zeppy", "amid", "amily"],
'Y': ["xar", "abc", "among"]})
print("Before Replacement")
print(df)
df.replace(to_replace=r'^ami.$', value='song', regex=True,inplace=True)
print("After Replacement")
print(df)
Resultado:
Before Replacement
X Y
0 zeppy xar
1 amid abc
2 amily among
After Replacement
X Y
0 zeppy xar
1 song abc
2 amily among
Substitui todos os elementos com os três primeiros caracteres como ami
seguidos de qualquer caracter com song
. Aqui apenas a amid
satisfaz dada a regex e por isso apenas a amid
é substituída por song
. Embora amily
também tenha os seus três primeiros caracteres como ami
mas há dois caracteres depois de ami
. Assim, amily
não satisfaz o regex dado e, portanto, permanece o mesmo e não é substituído. Se estiver a utilizar regex, certifique-se de que regex
está definido para True
e inplace=True
modifica o DataFrame
original depois de chamar replace()
metodo nele.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn