2017-10-05 161 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')) 
相關問題