値を別の値に置き換える新しい DataFrame を返します。
DataFrame.replace と DataFrameNaFunctions.replace は互いのエイリアスです。 to_replace値と値は同じ型である必要があり、数値、ブール値、または文字列のみを指定できます。 値には None を指定できます。 置き換えると、新しい値は既存の列の型にキャストされます。
構文
replace(to_replace: Union["LiteralType", List["LiteralType"], Dict["LiteralType", "OptionalPrimitiveType"]], value: Optional[Union["OptionalPrimitiveType", List["OptionalPrimitiveType"]]] = _NoValue, subset: Optional[List[str]] = None)
パラメーター
| パラメーター | タイプ | 説明 |
|---|---|---|
to_replace |
bool、int、float、string、list、dict | 置き換える値。 値が dict の場合、 value は無視されるか省略できます。 to_replace は、値と置換の間のマッピングである必要があります。 |
value |
bool、int、float、string、または None、省略可能 | 置換値は、ブール値、int、float、string、または None である必要があります。
valueがリストの場合、valueはto_replaceと同じ長さと型である必要があります。
valueがスカラーであり、to_replaceがシーケンスである場合、valueはto_replace内の各項目の置換として使用されます。 |
subset |
list、省略可能 | 考慮する列名の省略可能なリスト。 一致するデータ型を持たないサブセットで指定された列は無視されます。 |
返品
DataFrame: 置換された値を持つ DataFrame。
例示
df = spark.createDataFrame([
(10, 80, "Alice"),
(5, None, "Bob"),
(None, 10, "Tom"),
(None, None, None)],
schema=["age", "height", "name"])
df.na.replace(10, 20).show()
# +----+------+-----+
# | age|height| name|
# +----+------+-----+
# | 20| 80|Alice|
# | 5| NULL| Bob|
# |NULL| 20| Tom|
# |NULL| NULL| NULL|
# +----+------+-----+
df.na.replace('Alice', None).show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80|NULL|
# | 5| NULL| Bob|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+
df.na.replace(['Alice', 'Bob'], ['A', 'B'], 'name').show()
# +----+------+----+
# | age|height|name|
# +----+------+----+
# | 10| 80| A|
# | 5| NULL| B|
# |NULL| 10| Tom|
# |NULL| NULL|NULL|
# +----+------+----+