无法使用 Python 将 JSON 文件转换为 CSV
Posted
技术标签:
【中文标题】无法使用 Python 将 JSON 文件转换为 CSV【英文标题】:Unable to convert JSON file to CSV using Python 【发布时间】:2016-02-08 23:32:26 【问题描述】:我正在尝试将以下 JSON 文件转换为 csv 文件。
JSON 文件
[
"SubmitID":1, "Worksheet":3, "UserID":65,
"Q1":"395",
"Q2":"2178",
"Q3":"2699",
"Q4":"1494",
"SubmitID":2, "Worksheet":3, "UserID":65,
"Q4":"1394",
"SubmitID":3, "Worksheet":4, "UserID":65,
"Q1":"1629",
"Q2":"1950",
"Q3":"0117",
"Q4":"1816",
"Empty":" "]
但是,我下面的 Python 代码给出了错误消息“TypeError: Expected String or Unicode”。我可以知道我应该如何修改我的程序以使其正常工作吗?
import json
import pandas as pd
f2 = open('temp.json')
useful_input = json.load(f2)
df=pd.read_json(useful_input)
print(df)
df.to_csv('results.csv')
【问题讨论】:
【参考方案1】:您只需要将地址字符串传递给pd.read_json()
:
df=pd.read_json("temp.json")
【讨论】:
【参考方案2】:你不必使用 json 模块:
试试:
import pandas as pd
df=pd.read_json("temp.json")
print(df)
df.to_csv('results.csv')
【讨论】:
【参考方案3】:import pandas as pd
df = pd.read_json('data.json')
df.to_csv('data.csv', index=False, columns=['title', 'subtitle', 'date', 'description'])
import pandas as pd
df = pd.read_csv("data.csv")
df = df[df.columns[:4]]
df.dropna(how='all')
df.to_json('data.json', orient='records')
【讨论】:
以上是关于无法使用 Python 将 JSON 文件转换为 CSV的主要内容,如果未能解决你的问题,请参考以下文章
在 Python 中将嵌套的 JSON 转换为 CSV 文件
无法将 .json 文件从 CSV 下载到 JSON 转换并且无法将 JSON 转换为 CSV
使用 Python 将 CSV 文件数据转换为 JSON 格式