我正在动态导入JSON文件(将多个文件名并行发送到一个脚本中),并且其中一个文件的字段名中包含点。
当将其读入数据帧进行处理时,模式推断会将其分解为嵌套结构(即“ A.B.C”-> A [B [C]])。
有没有一种方法可以读取文件中的列而不破坏包含点的列名?
我知道反引号可以限定列名,但是由于我无法在读取JSON文件之前显式定义架构,因此我无法做到这一点。
df = sqlContext.read.option('multiline','true').json(<location>)
df.printSchema()
我看到“ P.O.重置成本”字段变为:
|-- P: struct (nullable = true)
| |-- O: struct (nullable = true)
| | |-- Replacement Cost: double (nullable = true)