Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Retourne un nouveau DataFrame remplacement d’une valeur par une autre valeur.
DataFrame.replace et DataFrameNaFunctions.replace sont des alias les uns des autres. Les valeurs pour to_replace et value doivent avoir le même type et peuvent uniquement être numériques, booléens ou chaînes.
value peut être None. Lors du remplacement, la nouvelle valeur est convertie en type de colonne existante.
Syntaxe
replace(to_replace, value=None, subset=None)
Paramètres
| Paramètre | Type | Description |
|---|---|---|
to_replace |
bool, int, float, str, list ou dict | Valeur à remplacer. Si une dictée est ignorée value et to_replace doit être un mappage d’une valeur à son remplacement. |
value |
bool, int, float, str ou None, facultatif | Valeur de remplacement. Si une liste doit être de la même longueur et du même type que to_replace. Si un scalaire et to_replace est une séquence, le scalaire est utilisé comme remplacement pour chaque élément. |
subset |
list, facultatif | Noms de colonnes à prendre en compte. Les colonnes qui subset n’ont pas de type de données correspondant sont ignorées. |
Retours
DataFrame
Remarques
Pour les remplacements numériques, toutes les valeurs à remplacer doivent avoir des représentations à virgule flottante uniques. En cas de conflit (par exemple, {42: -1, 42.0: 1}), un remplacement arbitraire est utilisé.
Exemples
df = spark.createDataFrame([
(10, 80, "Alice"),
(5, None, "Bob"),
(None, 10, "Tom"),
(None, None, None)],
schema=["age", "height", "name"])
Remplacez 10 par 20 dans toutes les colonnes.
df.na.replace(10, 20).show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 20| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 20| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+
Remplacez par 'Alice' null dans toutes les colonnes.
df.na.replace('Alice', None).show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80|NULL|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
Remplacez 'Alice' par et 'A' par 'Bob' dans la 'B' colonne.name
df.na.replace(['Alice', 'Bob'], ['A', 'B'], 'name').show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80| A|
# | 5| NULL| B|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
Remplacez 10 par 18 dans la age colonne.
df.na.replace(10, 18, 'age').show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 18| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+