如何使用Scala添加列

时间:2018-01-24 12:08:41

标签: scala apache-spark

我的df如下所示,并希望使用Scala添加其他列

Id Name
1  ab
2  BC
1  Cd
2  mf
3  Hh

预期输出应低于

Id name repeatedcount
1  ab      2
2  BC      2
1  Cd      2
2  mf      2
3  Hh      3

我使用DF.groupBy($"id").count.show(),但我得到的输出不同。

有人可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

val grouped = df.groupBy($"id").count

val res = df.join(grouped,Seq("id"))
            .withColumnRenamed("count","repeatedcount")

分组依据将给出每个ID的计数。加入原始数据框以计算每个ID。