Pyspark 代码,用于查看是否所有浮点数末尾都有 .0

Pyspark Code for seeing if all floats have .0 at the end

我很好奇是否有 Pyspark 代码可以查看列中的所有浮点数是否末尾都是 .0,或者是否有其他十进制数,例如 .1 或 .2 或 .5

例如,如果所有代码都以 .0 结尾,或者是否有以不同数字结尾的代码,我希望能够从下面的假代码中判断出来。

Index Score  
  0    2.5  
  1    1.7  
  2    1.0  
  3    3.0  

您可以使用 like 运算符。 like('%.0') 此处检查 float 列是否具有以 '.0'

结尾的值
from pyspark.sql.types import *

df.withColumn("pattern_check", when(col("Score").like('%.0'), True)\
    .otherwise(False)).show()
+-----+-----+-------------+
|Index|Score|pattern_check|
+-----+-----+-------------+
|    0|  2.5|        false|
|    1|  1.7|        false|
|    2|  1.0|         true|
|    3|  3.0|         true|
+-----+-----+-------------+