Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Restituisce un nuovo DataFrame valore sostituendo un valore con un altro valore.
DataFrame.replace e DataFrameNaFunctions.replace sono alias l'uno dell'altro. I valori per to_replace e value devono avere lo stesso tipo e possono essere numerici, booleani o stringhe.
value può essere None. Quando si sostituisce, viene eseguito il cast del nuovo valore al tipo della colonna esistente.
Sintassi
replace(to_replace, value=None, subset=None)
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
to_replace |
bool, int, float, str, list o dict | Valore da sostituire. Se un dict, value viene ignorato e to_replace deve essere un mapping da un valore alla relativa sostituzione. |
value |
bool, int, float, str o None, facoltativo | Valore di sostituzione. Se un elenco deve avere la stessa lunghezza e tipo di to_replace. Se un valore scalare e to_replace è una sequenza, il scalare viene usato come sostituzione per ogni elemento. |
subset |
list, facoltativo | Nomi di colonna da considerare. Le colonne in subset cui non è presente un tipo di dati corrispondente vengono ignorate. |
Restituzioni
DataFrame
Note
Per le sostituzioni numeriche, tutti i valori da sostituire devono avere rappresentazioni a virgola mobile univoche. In caso di conflitti ,ad esempio , {42: -1, 42.0: 1}viene usata una sostituzione arbitraria.
Examples
df = spark.createDataFrame([
(10, 80, "Alice"),
(5, None, "Bob"),
(None, 10, "Tom"),
(None, None, None)],
schema=["age", "height", "name"])
Sostituire 10 con 20 in tutte le colonne.
df.na.replace(10, 20).show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 20| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 20| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+
Sostituire 'Alice' con null in tutte le colonne.
df.na.replace('Alice', None).show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80|NULL|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
Sostituire 'Alice' con 'A' e 'Bob' con 'B' nella name colonna .
df.na.replace(['Alice', 'Bob'], ['A', 'B'], 'name').show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80| A|
# | 5| NULL| B|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
Sostituire 10 con 18 nella age colonna.
df.na.replace(10, 18, 'age').show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 18| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+