我有一个dataframe,该数据框映射到下面的案例类。
case class Data(key :String, tokens : List[String], anothercol : String)
我想获得由钥匙分组的独特令牌。如果代币不列表,我可以做:
dataDF.groupBy($"key").agg(collect_set($"tokens"))
我会很明显,但是与列表我该怎么做?
预先感谢
一个建议是将横向爆炸如Hive中的使用。这个想法是从令牌列表中的每个元素中创建一行。然后,您可以使用AGG和collect_set。
您可以写一个SQL来实现此