Когда я создаю DataFrame
из файла JSON в Spark SQL, как я могу узнать, существует ли данный столбец перед вызовом .select
Пример схемы JSON:
{
"a": {
"b": 1,
"c": 2
}
}
Вот что я хочу сделать:
potential_columns = Seq("b", "c", "d")
df = sqlContext.read.json(filename)
potential_columns.map(column => if(df.hasColumn(column)) df.select(s"a.$column"))
но я не могу найти хорошую функцию для hasColumn
. Самое близкое, что я получил, это проверить, находится ли столбец в этом несколько неудобном массиве:
scala> df.select("a.*").columns
res17: Array[String] = Array(b, c)