考虑以下数据框:
+-------+-----------+-------+
| rid| createdon| count|
+-------+-----------+-------+
| 124| 2017-06-15| 1 |
| 123| 2017-06-14| 2 |
| 123| 2017-06-14| 1 |
+-------+-----------+-------+
我需要在count
和createdon
相同的行中添加rid
列。
因此,结果数据框应如下:
+-------+-----------+-------+
| rid| createdon| count|
+-------+-----------+-------+
| 124| 2017-06-15| 1 |
| 123| 2017-06-14| 3 |
+-------+-----------+-------+
我使用的是Spark 2.0.2。
我已经尝试过agg,条件选择等,但找不到解决方案。任何人都可以帮助我吗?
答案 0 :(得分:1)
试试这个
import org.apache.spark.sql.{functions => func}
df.groupBy($"rid", $"createdon").agg(func.sum($"count").alias("count"))
答案 1 :(得分:0)
这应该做你想要的:
import org.apache.spark.sql.functions.sum
df
.groupBy($"rid",$"createdon")
.agg(sum($"count").as("count"))
.show