如何在pyspark中交换列名?

92vpleto  于 2023-04-05  发布在  Spark
关注(0)|答案(1)|浏览(161)

如何在pyspark中动态交换列名?

数据来源:

字段_1字段_2
值_1值_2值_3

目标数据:

字段_1字段_2
值_2值_1值_3

我有一个字段列表,我需要在运行中进行此交换,而不删除其他字段。

wpcxdonn

wpcxdonn1#

尝试使用.withColumns()函数,并为字典提供列名。

df =spark.createDataFrame([('value_1','value_2','value_3')],['field_1','field_2','value'])

#+-------+-------+-------+
#|field_1|field_2|value  |
#+-------+-------+-------+
#|value_1|value_2|value_3|
#+-------+-------+-------+

df.withColumns({"field_2":col("field_1"),"field_1":col("field_2")}).show(10,False)

#+-------+-------+-------+
#|field_1|field_2|value  |
#+-------+-------+-------+
#|value_2|value_1|value_3|
#+-------+-------+-------+

相关问题