Это то, что я использую для двух сводных столбцов в Dataframe, где я объединяю два столбца, а затем выполняю транспонирование.
// Define a udf to concatenate two passed in string values
val concat = udf( (first: String, second: String) => { first + " " + second } )
def main (args: Array[String]) {
// pivot using concatenated column
domainDF.withColumn("combColumn", concat($"col1",$"col2"))
.groupBy("someCol").pivot("combColumn").agg(count).show()
}
Мое требование - сделать эту функцию общей, поэтому любое количество столбцовможет быть передан как переменный аргумент для объединения. Может ли кто-нибудь предоставить какое-либо решение для требования? Спасибо