Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zwraca nową DataFrame wartość zastępującą wartość inną wartością.
DataFrame.replace i DataFrameNaFunctions.replace są aliasami siebie nawzajem. Wartości dla to_replace i value muszą mieć ten sam typ i mogą być tylko wartościami liczbowymi, logicznymi lub ciągami.
value może mieć wartość None. Podczas zastępowania nowa wartość jest rzutowa na typ istniejącej kolumny.
Składnia
replace(to_replace, value=None, subset=None)
Parametry
| Parameter | Typ | Opis |
|---|---|---|
to_replace |
bool, int, float, str, list, or dict | Wartość do zastąpienia. Jeśli dykt jest value ignorowany i to_replace musi być mapowaniem z wartości na jego zastąpienie. |
value |
bool, int, float, str, or None, opcjonalnie | Wartość zastępcza. Jeśli lista musi mieć taką samą długość i typ jak to_replace. Jeśli skalarny i to_replace jest sekwencją, skalar jest używany jako zamiennik dla każdego elementu. |
subset |
lista, opcjonalnie | Nazwy kolumn do rozważenia. Kolumny, w subset których nie mają pasującego typu danych, są ignorowane. |
Zwroty
DataFrame
Notatki
W przypadku zamian liczbowych wszystkie wartości do zastąpienia muszą mieć unikatowe reprezentacje zmiennoprzecinkowe. W przypadku konfliktów (na przykład {42: -1, 42.0: 1}) jest używana dowolna zamiana.
Examples
df = spark.createDataFrame([
(10, 80, "Alice"),
(5, None, "Bob"),
(None, 10, "Tom"),
(None, None, None)],
schema=["age", "height", "name"])
Zastąp wartość 10 wartością 20 we wszystkich kolumnach.
df.na.replace(10, 20).show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 20| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 20| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+
Zastąp ciąg 'Alice' wartością null we wszystkich kolumnach.
df.na.replace('Alice', None).show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80|NULL|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
Zastąp 'Alice' ciąg ciągiem 'A' i 'Bob' ciągiem 'B' w kolumnie 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|
# +----+------+----+
Zastąp wartość 10 wartością 18 w kolumnie age .
df.na.replace(10, 18, 'age').show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 18| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+