使用pyspark删除数据框的嵌套列

时间:2020-04-06 08:28:56

标签: dataframe pyspark pyspark-sql drop

我知道它是重复的,但是我再次问的原因是因为我找到了一些有趣的解决方案,但它对我不起作用,我很好奇如何修改才能起作用

这是解决方案:

def drop_col(df, struct_nm, delete_struct_child_col_nm):
    fields_to_keep = filter(lambda x:  x != delete_struct_child_col_nm, df.select("{}.*".format(struct_nm)).columns)
    fields_to_keep = list(map(lambda x:  "{}.{}".format(struct_nm, x), fields_to_keep))
    return df.withColumn(struct_nm, struct(fields_to_keep))

但是我收到一个错误消息,可能是因为它无法识别not!=符号。它告诉我放一个代字号。但这也不起作用。 有什么办法可以使其工作?可能使用udf?我该怎么办?

0 个答案:

没有答案