【发布时间】:2018-10-25 12:31:10
【问题描述】:
我有一个包含日期、帐户 ID 和值的数据集。我想将数据集转换为一个新数据集,如果 accountid 在特定日期不存在,则在该日期添加一个值为 0 的 accountid。这可能吗
val df = sc.parallelize(Seq(("2018-01-01", 100.5,"id1"),
("2018-01-02", 120.6,"id1"),
("2018-01-03", 450.2,"id2")
)).toDF("date", "val","accountid")
+----------+-----+---------+
| date| val|accountid|
+----------+-----+---------+
|2018-01-01|100.5| id1|
|2018-01-02|120.6| id1|
|2018-01-03|450.2| id2|
+----------+-----+---------+
我想把这个数据集转换成这种格式
+----------+-----+---------+
| date| val|accountid|
+----------+-----+---------+
|2018-01-01|100.5| id1|
|2018-01-01| 0.0| id2|
|2018-01-02|120.6| id1|
|2018-01-02| 0.0| id2|
|2018-01-03|450.2| id2|
|2018-01-03|0.0 | id1|
+----------+-----+---------+
【问题讨论】:
标签: scala apache-spark apache-spark-sql apache-spark-mllib