Я не уверен, что вы имеете в виду о сумме.Если вы имеете в виду сумму значений всего столбца, вы можете использовать функцию agg.Или, если вы хотите суммировать как _10 + _12 и создать новый столбец, используйте функцию withColumn
>>> data = sc.parallelize([
... ('yearID','H','3B'),
... ('2004','0','0'),
... ('2006','0','0'),
... ('2007','0','0'),
... ('2008','0','0'),
... ('2009','0','0'),
... ('2010','0','0'),
... ('1954','131','6'),
... ('1955','189','9'),
... ('1956','200','14'),
... ('1957','198','6')
... ])
>>>
>>> cols = ['_2','_10','_12']
>>>
>>> df = spark.createDataFrame(data,cols)
18/10/01 04:22:48 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
>>>
>>> df.show()
+------+---+---+
| _2|_10|_12|
+------+---+---+
|yearID| H| 3B|
| 2004| 0| 0|
| 2006| 0| 0|
| 2007| 0| 0|
| 2008| 0| 0|
| 2009| 0| 0|
| 2010| 0| 0|
| 1954|131| 6|
| 1955|189| 9|
| 1956|200| 14|
| 1957|198| 6|
+------+---+---+
>>> df.agg({'_10':'sum','_12':'sum'}).show()
+--------+--------+
|sum(_12)|sum(_10)|
+--------+--------+
| 35.0| 718.0|
+--------+--------+
>>> df.withColumn('new_col', df['_10']+df['_12']).show()
+------+---+---+-------+
| _2|_10|_12|new_col|
+------+---+---+-------+
|yearID| H| 3B| null|
| 2004| 0| 0| 0.0|
| 2006| 0| 0| 0.0|
| 2007| 0| 0| 0.0|
| 2008| 0| 0| 0.0|
| 2009| 0| 0| 0.0|
| 2010| 0| 0| 0.0|
| 1954|131| 6| 137.0|
| 1955|189| 9| 198.0|
| 1956|200| 14| 214.0|
| 1957|198| 6| 204.0|
+------+---+---+-------+