Я написал следующий код для подачи данных в алгоритм машинного обучения в Spark 2.3. Код ниже работает нормально. Мне нужно улучшить этот код, чтобы можно было конвертировать не только 3 столбца, но и любое количество столбцов, загруженных через файл CSV. Например, если я загрузил 5 столбцов, как я могу автоматически разместить их в приведенной ниже команде Vector.dense или каким-либо другим способом получить тот же конечный результат? Кто-нибудь знает, как это можно сделать?
val data2 = spark.read.format("csv").option("header",
"true").load("/data/c7.csv")
val goodBadRecords = data2.map(
row =>{
val n0 = row(0).toString.toLowerCase().toDouble
val n1 = row(1).toString.toLowerCase().toDouble
val n2 = row(2).toString.toLowerCase().toDouble
val n3 = row(3).toString.toLowerCase().toDouble
(n0, Vectors.dense(n1,n2,n3))
}
).toDF("label", "features")
Спасибо
С уважением,
Adeel