如何查询Spark数据集的列名?

时间:2016-09-19 17:36:52

标签: scala apache-spark spark-dataframe

我有一个val ds: Dataset[Double](在Spark 2.0.0中),但是可以传递给applycol以从此转换的双值列的名称是什么1列DatasetColumn

2 个答案:

答案 0 :(得分:7)

列名是"值"与ds.col("value")中一样。 Dataset.schema包含以下信息:ds.schema.fields.foreach(x => println(x))

答案 1 :(得分:7)

您还可以使用DataFrame的方法columns,它将所有列作为字符串数组返回。

case class Person(age: Int, height: Int, weight: Int){
  def sum = age + height + weight
}

val df = sc.parallelize(List(Person(1,2,3), Person(4,5,6))).toDF("age", "height", "weight")

df.columns
//res0: Array[String] = Array(age, height, weight)
相关问题