Scala 如何在ApacheSpark中将列表项括在双引号内

Scala 如何在ApacheSpark中将列表项括在双引号内,scala,apache-spark,Scala,Apache Spark,我有一个字符串变量,它包含几个用逗号分隔的列名。例如: val temp=“Col2、Col3、Col4” 我有一个Dataframe,我想根据某些列对Dataframe进行分组,这些列也包括存储在temp变量中的列。例如,我的groupBy语句应该与下面的语句类似 DF.groupBy(“Col1”、“Col2”、“Col3”、“Col4”) temp变量可以有任何列名。因此,我想创建一个GroupBy语句,动态获取temp变量的值以及我提供的手动条目 我试着用下面的陈述,但没有用 DF.gr

我有一个字符串变量,它包含几个用逗号分隔的列名。例如:

val temp=“Col2、Col3、Col4”

我有一个Dataframe,我想根据某些列对Dataframe进行分组,这些列也包括存储在temp变量中的列。例如,我的groupBy语句应该与下面的语句类似

DF.groupBy(“Col1”、“Col2”、“Col3”、“Col4”)

temp变量可以有任何列名。因此,我想创建一个GroupBy语句,动态获取temp变量的值以及我提供的手动条目

我试着用下面的陈述,但没有用 DF.groupBy(“Col1”,温度)

然后,我根据逗号符号拆分了temp变量的值,并将其存储在另一个变量中,然后尝试将其传递给groupBy语句。但即使这样也失败了

val temp1=临时拆分(“,”)

DF.groupBy(“Col1”,temp1)

您知道如何将列表变量的值括在双引号内并将其传递给groupBy语句吗?

使用varargs:

df.groupBy("Col1", temp1: _*)


DF.groupBy(“Col1”,temp:*)
这假设
groupBy()
通过标准varargs语法接受任意数量的
字符串
参数。感谢@jwvh提供的宝贵输入非常感谢@user8371915提供的宝贵输入
import org.apache.spark.sql.functions.col

df.groupBy("Col1 +: temp1 map col: _*)