當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。