【问题标题】:Combining Spark schema without duplicates using PySpark?使用 PySpark 组合 Spark 模式而不重复?
【发布时间】:2021-03-10 14:50:54
【问题描述】:

无法将以下三个组合成一个没有重复列的最终架构。
下面是代码:

schema1 = StructType([StructField("A", StringType(), True),
                        StructField("B", StringType(), True)])
schema2 = StructType([StructField("c", StringType(), True),
                        StructField("B", StringType(), True)])
schema3 = StructType([StructField("D", StringType(), True),
                        StructField("A", StringType(), True)])
final=(schema1 ++ schema2 ++ schema3).distinct
print( final)

【问题讨论】:

    标签: apache-spark pyspark


    【解决方案1】:
    schema1 = StructType([StructField("A", StringType(), True),
                            StructField("B", StringType(), True)])
    schema2 = StructType([StructField("c", StringType(), True),
                            StructField("B", StringType(), True)])
    schema3 = StructType([StructField("D", StringType(), True),
                            StructField("A", StringType(), True)])
    final = StructType(list(set(schema1.fields+schema2.fields+schema3.fields)))
    print(final)
    

    给予

    StructType(List(StructField(B,StringType,true),StructField(D,StringType,true),StructField(c,StringType,true),StructField(A,StringType,true)))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-30
      • 1970-01-01
      • 2018-09-03
      • 2019-11-15
      • 1970-01-01
      • 2013-02-06
      相关资源
      最近更新 更多