在pyspark中,可以使用when
和otherwise
函数来处理整型列中不正确的值并返回null。
具体步骤如下:
from pyspark.sql import SparkSession
from pyspark.sql.functions import when
spark = SparkSession.builder.getOrCreate()
data = [(1, 10), (2, 20), (3, -1), (4, 30), (5, -2)]
df = spark.createDataFrame(data, ["id", "value"])
when
和otherwise
函数处理整型列中的不正确值:df = df.withColumn("value", when(df.value < 0, None).otherwise(df.value))
在上述代码中,我们使用when
函数判断value
列中的值是否小于0,如果是,则返回null,否则返回原值。通过otherwise
函数指定返回的值。
最后,我们可以查看处理后的DataFrame:
df.show()
输出结果:
+---+-----+
| id|value|
+---+-----+
| 1| 10|
| 2| 20|
| 3| null|
| 4| 30|
| 5| null|
+---+-----+
这样,当整型列中具有不正确的值时,我们就能返回null来处理这些异常值。
领取专属 10元无门槛券
手把手带您无忧上云