Adding columns in RDD

I am trying to add multiple columns(int values) to find the highest and lowest selling genre based on global sales.
Format of the table:
Name , Platform , Year ,Genre ,Publisher ,NA_Sales , EU_Sales , JP_Sales , Other_Sales
example data set :
( Formula ) [Global Sales = NA_Sales + EU_Sales + JP_Sales]
example output :
Highest selling Genre: Shooter Global Sale (in millions): 27.57
Lowest selling Genre: Strategy Global Sale (in millions): 0.23

val vgdataLines = sc.textFile("hdfs:///user/ashhall1616/bdc_data/t1/vgsales-small.csv")
val vgdata = vgdataLines.map(_.split(";"))

val GlobalSales  = vgdata.map(r => r(3), r(5) + r(6) + r(7)). reduceByKey(_+_)

What I am trying to use her is a reduce by key to reduce the total NA_Sales + EU_Sales + JP_Sales to one value and then reduce by Genre. I created GlobalSales with Genre and total sales. But r(5) + r(6) + r(7) adds the values into a string.

Array[String] = Array(6.855.091.87, 9.034.280.13, 5.895.043.12, 9.673.730.11, 4.42.773.96, 0.180.140, 000.37, 0.20.070, 0.140.320.22, 0.140.110, 0.090.010.15
, 0.020.020.22, 0.140.110, 0.10.130, 0.140.110, 0.110.030, 0.130.020, 0.090.030, 0.060.040, 0.1200)

can someone help?

okay I got to the point getting min max.

val GlobalSales  = vgdata.map(r =>  (r(3), r(5).toDouble + r(6).toDouble + r(7).toDouble)).reduceByKey(_+_)
val maxsales = GlobalSales.sortBy(_._2, false).take(1)
val minsales = GlobalSales.sortBy(_._2, true).take(1)

Now I want to print output:
Highest selling Genre: Shooter Global Sale (in millions): 27.57
Lowest selling Genre: Strategy Global Sale (in millions): 0.23