2017-10-05 64 views
0

我需要在我的数据框中创建新列,并从数据框值中命名这些列。事情是这样的:PySpark:从列值中命名一个新的数据框列

new_df = df.withColumn(concat('col_',df['col1']) , df['col2']+df['col3']) 

但它告诉我不能使用列对象名称

+1

这就像,在COL1每个值,必须创建一个新列,是否正确? – Suresh

+0

@Suresh这正是我想要计算和你的答案帮助我谢谢 –

回答

1

让我知道如果这能帮助,

from pyspark.sql import functions as F 
new_df = df.withColumn('combcol',F.concat(F.lit('col_'),df['col1'])).groupby('col1').pivot('combcol').agg(F.first('col1')+F.first('col2')) 
相关问题