Я знаю, что это дубликат, но причина, по которой я спрашиваю снова, заключается в том, что я нашел какое-то интересное решение, и оно не работает для меня, и мне любопытно узнать, как его можно изменить, чтобы оно работало
это есть решение:
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? Как мне это сделать?