【问题标题】:Creating Json structure from Pyspark Dataframe从 Pyspark Dataframe 创建 Json 结构
【发布时间】:2020-10-01 15:19:41
【问题描述】:

我有数据框,它是左连接的产物。现在我想创建 json 结构。

我尝试使用不同的选项,但无法创建它。这是我的数据框:

col1    col2    col3    col4
1111    name    aaa     bbb
1111    name    ccc     ddd
1111    name    iii     kkk
1112    name1   abcd    def
1112    name1   DEFG    ABXC

想要的json结构是:

{col1: 1111, col2: name, details: [{col3: aaa, col4: bbb}, {col3: ccc, col4: ddd}, {col3: iii, col4: kkk}]},
{col1: 1112, col2: name1, details: [{col3: abcd, col4: def}, {col3: DEFG, col4: ABXC}]}

【问题讨论】:

    标签: python python-3.x dataframe pyspark mapreduce


    【解决方案1】:

    你可以这样做:

    import pyspark.sql.functions as f
    
    df = df.withColumn("details", f.to_json(f.struct("col3", "col4")))
    df = df.groupBy(*["col1", "col2"]).agg(f.collect_list("details").alias("details"))
    
    df.write.format('json').save('/path/file_name.json')
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 2021-08-26
      • 2021-10-13
      • 1970-01-01
      • 2018-07-01
      • 1970-01-01
      • 2018-01-13
      相关资源
      最近更新 更多