pyspark收集/分组嵌套数据

goqiplq2  于 2021-05-24  发布在  Spark
关注(0)|答案(1)|浏览(367)

我正在使用spark 2.4.5中的研究论文元数据示例如下:

我需要分组讨论 auid 并收集相关的 eids , affiliation ids (来自“隶属关系”列), affiliation cities (我从其他df加入,因为这个df是不完整的),以跟踪随时间变化的从属城市。所以最后,我可能需要 auid 以及一个 eid , year , affil_id , aff_city . 我尝试了一些事情,但是对结果不太满意,所以我在这里请求支持。如果需要,我可以发布df的文本形式的样本。

lymgl2op

lymgl2op1#

成功了:

df.groupBy('auid').agg(func.collect_set(func.struct('eid', 'Year', 'affiliation.affiliation_organization', 'affiliation.affiliation_city', 'affiliation.afid')).alias('eid_attr_set'))

相关问题