scala – 如何使用字符串数组在spark数据帧中将列名设置为toDF()函数?

例如,

val columns=Array("column1", "column2", "column3")
val df=sc.parallelize(Seq(
(1,"example1", Seq(0,2,5)),
(2,"example2", Seq(1,20,5)))).toDF(columns)

如何使用字符串数组设置列名?
是否可以在toDF()中提及数据类型?

最佳答案
toDF()接受String类型的重复参数,因此您可以使用_ *类型注释来传递序列:

val df=sc.parallelize(Seq(
  (1,"example1", Seq(0,2,5)),
  (2,"example2", Seq(1,20,5)))).toDF(columns: _*)

有关重复参数的更多信息,请参阅Scala Language Specification中的4.6.2节.

转载注明原文:scala – 如何使用字符串数组在spark数据帧中将列名设置为toDF()函数? - 代码日志