删除数据框中的重复列

时间:2020-01-22 19:55:23

标签: pyspark pyspark-sql

我知道这似乎是一个非常简单的问题,我已经为其搜索了Google和stackoverflow,但找不到我真正需要的东西。

我已使用以下代码将一些数据从一个数据帧config聚合到另一个config1中。该代码的基础由另一个stackoverflow成员Thank You @Sunny Shukla提供。

exprs=map(lambda c: max(c).alias(c), config.columns)
config1=config.groupBy(["seq_id","tool_id"])\
.agg(f.count(f.lit(1)).alias('count'),
     *exprs).where('count = 1').drop('count')

config数据帧有20列,而config1 df有22列,因为我使用2列seq_idtool_id将其分组,但将整个原始列映射到保留原始的列名(确保有一种更优雅的方法) 因此,结果数据帧config1具有seq_idtool_id的重复列。如果我做 config1.drop('seq_id','tool_id')然后删除4列,而我最终得到18列而不是20列。 没有编写UDF的方法,还有更优雅的方法吗? 谢谢

0 个答案:

没有答案