Мне нужна помощь, чтобы решить эту проблему, с которой я столкнулся, используя функцию scala map. Я загрузил текстовый файл, разделенный табуляцией.
Значения выглядят следующим образом: RDD: org. apache .spark.rdd.RDD [String]
Array [String] = Array (200110 1220 THEFT, 200112 2020 BATTERY, 200101 1010 ПОВРЕЖДЕНИЕ, ....)
Я бы хотел получить RDD вроде (1220 THEFT, 2020 BATTERY, 1010 DAMAGE, ....)
I Пробовал следующее, но выкидывает ошибки.
val crimeData = sc.textFile("/user/user_dir/crime_data")
val crimeTest = crimeData.map(crime => {
val b = crime.split(",")
val c = b(0).split(" ")
((c(1),c(2)))
})
Когда я запускаю этот код, все, что я получаю, - это ArrayOutOfBoundsExeception: 1
Я знаю, что он выдает эту ошибку, потому что он не может получить доступ к позиции 1, но я не знаю как получить результаты так, как я хочу.
Помогите, пожалуйста!