Образец DF:
var someDF = Seq(
(1, "2017-12-02 03:04:00"),
(1, "2017-12-02 03:45:00"),
(1, "2017-12-02 04:04:00"),
(2, "2017-12-02 04:14:00"),
(2, "2017-12-02 04:54:00"),
(3, "2017-10-01 11:45:20"),
(4, "2017-10-01 02:45:20")
).toDF("number", "date")
OP:
+------+-------------------+
|number| date|
+------+-------------------+
| 1|2017-12-02 03:04:00|
| 1|2017-12-02 03:45:00|
| 1|2017-12-02 04:04:00|
| 2|2017-12-02 04:14:00|
| 2|2017-12-02 04:54:00|
| 3|2017-10-01 11:45:20|
| 4|2017-10-01 02:45:20|
+------+-------------------+
Когда я пытаюсь использовать кросс-таблицу:
var temp = someDF.stat.crosstab("date","number")
temp.show()
OP:
+-------------------+---+---+---+---+
| date_number| 1| 2| 3| 4|
+-------------------+---+---+---+---+
|2017-10-01 11:45:20| 0| 0| 1| 0|
|2017-12-02 03:04:00| 1| 0| 0| 0|
|2017-12-02 04:54:00| 0| 1| 0| 0|
|2017-12-02 04:14:00| 0| 1| 0| 0|
|2017-12-02 03:45:00| 1| 0| 0| 0|
|2017-12-02 04:04:00| 1| 0| 0| 0|
|2017-10-01 02:45:20| 0| 0| 0| 1|
+-------------------+---+---+---+---+
Я хотел бы применить ту же кросс-таблицу, но только с date_and_hour, например: 2017-12-02 03:
Ожидаемый OP:
+-------------------+---+---+---+---+
| date_Hour_number| 1| 2| 3| 4|
+-------------------+---+---+---+---+
|2017-10-01 11 | 0| 0| 1| 0|
|2017-12-02 03 . | 1| 0| 0| 0|
|2017-12-02 04 . | 0| 2| 0| 0|
Любое предложение будет полезным