【发布时间】:2018-06-14 17:23:15
【问题描述】:
所以我在 Dataframe x 上有这个“查询”:
x.withColumn("person",explode($"col1.col2")).groupBy("person.col3").count().sort(desc("count")).show
这会计算 col3 的频率,对其进行排序并打印一个包含列的表格:col3,count
我还希望它打印来自 x 的特定列以及 col3,count。
我如何做到这一点?
【问题讨论】:
-
通常,您会将结果集设置为新的 Dataframe,然后将其连接回
x并选择所需的列。如果您需要具体帮助,可能需要查看x.printSchema。 -
加入哪个键,因为我 groupBy 时没有保留该键?感谢回复
-
这正是我要求模式的原因,以尝试推断连接键。你能
.groupBy("key_column", "person.col3")还是得到你想要的聚合吗? -
或者,如果您不关心
col3的唯一性,只需将其与person.col3结合起来即可。
标签: scala apache-spark dataframe group-by frequency