如何重命名列名我有一个数据帧与配置的列名,例如火花SQL
Journey channelA channelB channelC
j1 1 0 0
j1 0 1 0
j1 1 0 0
j2 0 0 1
j2 0 1 0
通过配置我的意思可能是“否”的数据帧通道。
现在我需要在我需要找到的所有通道的东西的总和一样
df.groupBy("Journey").agg(sum("channelA"), sum("channelB"), sum("channelC"))
转换其输出是:
Journey sum(channelA) sum(channelB) sum(channelC)
j1 2 1 0
j2 0 1 1
现在我想重新命名列名到原来的名字,我可以这样做
.withColumnRenamed("sum(channelA)", channelA)
但正如我所提到的渠道列表是可配置的,我想一个通用列命名语句来命名我所有的都概括列原来的列名,以获得预期的数据帧为:
Journey channelA channelB channelC
j1 2 1 0
j2 0 1 1
任何建议如何处理这个