当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark DataFrame.replace用法及代码示例


本文简要介绍 pyspark.sql.DataFrame.replace 的用法。

用法:

DataFrame.replace(to_replace, value=<no value>, subset=None)

返回一个新的 DataFrame ,用另一个值替换一个值。 DataFrame.replace() DataFrameNaFunctions.replace() 互为别名。值 to_replace 和 value 必须具有相同的类型,并且只能是数字、布尔值或字符串。值可以为 None。替换时,新值将转换为现有列的类型。对于数字替换,所有要替换的值都应具有唯一的浮点表示形式。如果发生冲突(例如与 {42: -1, 42.0: 1} ),将使用任意替换。

1.4.0 版中的新函数。

参数

to_replacebool、int、float、string、list 或 dict

要替换的值。如果 value 是一个 dict,那么 value 将被忽略或可以省略,并且 to_replace 必须是 value 和 replace 之间的映射。

valuebool、int、float、string 或 None,可选

替换值必须是 bool、int、float、string 或 None。如果 value 是一个列表,则 value 的长度和类型应与 to_replace 相同。如果 value 是标量且 to_replace 是序列,则 value 用作 to_replace 中每个项目的替换。

subset列表,可选

要考虑的列名的可选列表。子集中指定的不具有匹配数据类型的列将被忽略。例如,如果value 是一个字符串,并且子集包含一个非字符串列,则简单地忽略非字符串列。

例子

>>> df4.na.replace(10, 20).show()
+----+------+-----+
| age|height| name|
+----+------+-----+
|  20|    80|Alice|
|   5|  null|  Bob|
|null|  null|  Tom|
|null|  null| null|
+----+------+-----+
>>> df4.na.replace('Alice', None).show()
+----+------+----+
| age|height|name|
+----+------+----+
|  10|    80|null|
|   5|  null| Bob|
|null|  null| Tom|
|null|  null|null|
+----+------+----+
>>> df4.na.replace({'Alice': None}).show()
+----+------+----+
| age|height|name|
+----+------+----+
|  10|    80|null|
|   5|  null| Bob|
|null|  null| Tom|
|null|  null|null|
+----+------+----+
>>> df4.na.replace(['Alice', 'Bob'], ['A', 'B'], 'name').show()
+----+------+----+
| age|height|name|
+----+------+----+
|  10|    80|   A|
|   5|  null|   B|
|null|  null| Tom|
|null|  null|null|
+----+------+----+

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.sql.DataFrame.replace。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。