![](/img/trans.png)
[英]isin throws stackoverflow error in withcolumn function in spark
[英]Error With Multiple withColumn in Apache Spark
这行代码无法按我认为的方式工作:
val df2 = df1
.withColumn("email_age", when('age_of_email <= 60, 1))
.withColumn("email_age", when('age_of_email <= 120, 2))
.withColumn("email_age", when('age_of_email <= 180, 3).otherwise(4))
我在df1中有数千行,其中age_of_email
小于60和/或小于120,但是我所有的行都被归类为3或4 :
为什么会发生这种情况的任何见解?
正如人们在评论中所说,将withColumn
与数据withColumn
存在的列名一起使用将替换该列。
我认为,对于您想要实现的目标,您可以为每种分类使用不同的列名称,或者只是将when()
合并到单个列中,例如
val df2 = df1.withColumn("email_age", when('age_of_email <= 60, 1)
.when('age_of_email <= 120, 2)
.when('age_of_email <= 180, 3)
.otherwise(4))
我想您知道类别是类别3
子集
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.