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


Python PySpark SQL Functions round方法用法及代码示例


PySpark SQL 函数的 round(~) 方法对指定列的值进行舍入。

参数

1.col | stringColumn

要执行舍入的列。

2. scale | int | optional

如果小数位数为正数,例如 scale=2 ,则值将四舍五入到最接近的小数点后第二位。如果比例为负数,例如 scale=-1 ,则值将四舍五入到最接近的十分之一。默认情况下, scale=0 ,即值四舍五入到最接近的整数。

返回值

PySpark 列 (pyspark.sql.column.Column)。

例子

考虑以下PySpark DataFrame:

df = spark.createDataFrame([["Alex", 90.4], ["Bob", 100.5], ["Cathy", 100.63]], ["name", "salary"])
df.show()



+-----+------+
| name|salary|
+-----+------+
| Alex|  90.4|
|  Bob| 100.5|
|Cathy|100.63|
+-----+------+

将列值四舍五入到最接近的整数

要四舍五入到最接近的整数:

import pyspark.sql.functions as F
df.select(F.round("salary")).show()



+----------------+
|round(salary, 0)|
+----------------+
|            90.0|
|           101.0|
|           101.0|
+----------------+

请注意 100.5 如何四舍五入为 101

将列值四舍五入到最接近的第一个小数

四舍五入到最接近的小数点后第一位:

df.select(F.round("salary", scale=1)).show()



+----------------+
|round(salary, 1)|
+----------------+
|            90.4|
|           100.5|
|           100.6|
+----------------+

将列值四舍五入到最接近的十分之一

四舍五入到最接近的十分位:

df.select(F.round("salary", scale=-1)).show()



+-----------------+
|round(salary, -1)|
+-----------------+
|             90.0|
|            100.0|
|            100.0|
+-----------------+

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 PySpark SQL Functions | round method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。