如何检索字段B的字段A的最常见值?

时间:2018-06-12 20:03:26

标签: scala apache-spark apache-spark-sql

鉴于以下DataFrame df,如何为field2cid的每个唯一组合计算field1的最常用值?

cid  field1  field2
1    aaa     x 
1    aaa     x  
1    aaa     y 
1    bbb     x  
1    bbb     y

这是我的代码,但如果可能,我想简化它:

df.groupBy("cid","field1").agg(count("field2") as "cnt")
val w = Window.partitionBy(Seq(col("cid"),col("field1"))).orderBy(col("cnt").desc)
val result = temp.withColumn("rn", row_number.over(w)).where(col("rn") === 1).drop("rn")

0 个答案:

没有答案