我的pyspark dataframe有以下模式...DataFrame[ExternalData: struct<provider:string,data:string,modality:array<string>>]
如果我写(其中sdf
是我的pyspark Dataframe )..sdf.schema
我...
StructType([StructField('ExternalData', StructType([StructField('provider', StringType(), True), StructField('data', StringType(), True), StructField('modality', ArrayType(StringType(), True), True)]), True)])
我怎样才能得到下面的呢?
StructType([StructField('provider', StringType(), True), StructField('data', StringType(), True), StructField('modality', ArrayType(StringType(), True), True)])
有一个细微的区别,即ExternalData
StructType
和StructField
已被删除。我需要这样做的原因是,我集成的系统需要这种格式的parquet模式,其中ExternalData
字段和结构体被传递到其他地方。
有人有什么建议吗?
1条答案
按热度按时间v1uwarro1#
试试这个:
您的DataFrame架构:
选择
ExternalData
的所有子列以获得所需的输出输出: