pythonapache-sparkpysparkapache-spark-sql

How can I sum multiple columns in a spark dataframe in pyspark?


I've got a list of column names I want to sum

columns = ['col1','col2','col3']

How can I add the three and put it in a new column ? (in an automatic way, so that I can change the column list and have new results)

Dataframe with result I want:

col1   col2   col3   result
 1      2      3       6

Solution

  • Try this:

    df = df.withColumn('result', sum(df[col] for col in df.columns))
    

    df.columns will be list of columns from df.