【发布时间】:2021-10-14 17:41:11
【问题描述】:
我在下面粘贴了我的代码。
我期望当col2 = 7 时,它应该返回1,但它有时会返回 1,有时会返回 2 - 在其他时候。设置后,我不会对 col2 进行任何操作。有没有人经历过这种奇怪的行为?还是因为每个条件的限制是重叠的?
df = df.withColumn('col1', F.when(F.col('col2').between(1,7), 1)
.when(F.col('col2').between(7,14), 2)
.when(F.col('col2').between(14,21), 3)
.when(F.col('col2').between(21,28), 4)
.otherwise(5))
【问题讨论】:
标签: apache-spark pyspark apache-spark-sql case