Python 3.x 如何使用python或spark dataframe将json文件转换为csv文件

Python 3.x 如何使用python或spark dataframe将json文件转换为csv文件,python-3.x,pyspark,azure-databricks,Python 3.x,Pyspark,Azure Databricks,我必须使用DataRicks中的spark dataframe将json文件转换为csv文件。我尝试了下面的代码将json转换为csv,但我得到的csv数据源不支持spark dataframe中的数组数据类型。我无法转换为csv文件。有人能帮我解决这个问题吗?如何删除损坏的字符串 import json data=r'/dbfs/FileStore/tables/ABC.json' print ("This is json data ", data) def js_r

我必须使用DataRicks中的spark dataframe将json文件转换为csv文件。我尝试了下面的代码将json转换为csv,但我得到的csv数据源不支持spark dataframe中的数组数据类型。我无法转换为csv文件。有人能帮我解决这个问题吗?如何删除损坏的字符串

 import json
    data=r'/dbfs/FileStore/tables/ABC.json'
    print ("This is json data ", data)
    def js_r(data):
       with open(data, encoding='utf-8') as f_in:
           return(json.load(f_in))

    if __name__ == "__main__":
        dic_data_first = js_r(data)
        print("This is my dictionary", dic_data_first)
    keys= dic_data_first.keys()
    print ("The original dict keys",keys)
    dic_data_second={'my_items':dic_data_first['Data']for key in keys}
    with open('/dbfs/FileStore/tables/ABC_1.json', 'w') as f:   
         json.dump(dic_data_first, f)
    df = sqlContext.read.json('dbfs:/FileStore/tables/ABC_1.json')   # reading a json and writing a  parquet
    print(df)
df.write.mode("overwrite").format("com.databricks.spark.csv").option("header","true").csv("/dbfs/FileStore/tables/ABC_1.csv")
JSON data as follows:
{"Table":"test1",
  "Data":[
{"aa":"1",
 "bb":"2"},
{"aa" :"ss",
"bb":"dc"}            
}]
}

@Remorse的可能副本没有回答我的问题,我也更新了一些代码更改。你能帮我解决这个问题吗?请提供你想要的json输出。另外,
dic_data_second={'my_items':dic_data_first['data']for key in key}
应该做什么?我不认为你在做你认为你在做的事情。我也不明白是什么让你的问题与答案不同。您的json不同,但代码框架相同。@感谢您的回复。我已更新了问题。dic_data_seconds为我提供了一个数据。因此,我使用键获取列标题。但在写入csv文件后,我收到了错误,因为csv数据源不支持数组数据类型。因此,您能在这方面帮助我吗@Remorse的副本没有回答我的问题,我也更新了一些代码更改。你能帮我解决这个问题吗?请提供你想要的json输出。另外,
dic_data_second={'my_items':dic_data_first['data']for key in key}
应该做什么?我不认为你在做你认为你在做的事情。我也不明白是什么让你的问题与答案不同。您的json不同,但代码的框架是相同的。@后悔谢谢您的回答。我已经更新了问题。dic_data_seconds为我提供了一个数据。因此我使用键来获取列标题。但是在写入csv文件后,我得到了错误,因为csv数据源不支持数组数据类型。因此,您能在这方面帮助我吗