Scala:对列映射数组进行排序
我有以下数组:Scala:对列映射数组进行排序,scala,apache-spark,Scala,Apache Spark,我有以下数组: [{"Date":"2019-01-01","Order id":"1"}, {"Date":"2019-02-01","Order id":"10"}] 我想按日期订购(说明): 我试图表演 .sortBy(x => (x.$"Date")) 但这显然是错误的: error: identifier expected but string literal found. 谢谢 编辑 数组被创建为数据帧的新列 df2 .groupBy(groupByCols.map
[{"Date":"2019-01-01","Order id":"1"}, {"Date":"2019-02-01","Order id":"10"}]
我想按日期订购(说明):
我试图表演
.sortBy(x => (x.$"Date"))
但这显然是错误的:
error: identifier expected but string literal found.
谢谢
编辑
数组被创建为数据帧的新列
df2
.groupBy(groupByCols.map(col): _*)
.agg(jsonField.as("jsonField"))
jsonField在哪里
val jsonField= map(
lit("label_name"),
to_json(
collect_set(struct(
col("date").as("Date"),
col("order_id").as("Order id")))
所以它是一个柱的结构。
Spark版本是2.4.3你用什么来表示你的JSON?collect_set(结构(数组(col(“date”).as(“date”)、col(“order_id”).as(“order id”):*)这看起来像Spark,对吗?正确。正确标记。您当前的输入数据帧是什么样子的?您能否将问题中的输入格式化为datafram/dataset格式?如果它是一个数组列,那么数组是什么?另外,请指定Spark版本。
val jsonField= map(
lit("label_name"),
to_json(
collect_set(struct(
col("date").as("Date"),
col("order_id").as("Order id")))