【发布时间】:2019-04-13 06:57:37
【问题描述】:
我正在使用以下代码从 mongoDB 查询中导出 json:
querywith open(r'/Month/Applications_test.json', 'w') as f:
for x in dic:
json.dump(x, f, default=json_util.default)
运行良好并返回以下 json:
{
"_class": "Application",
"_id": "123",
"applicationTimeStamp": {
"$date": 1541466008000
},
"createdDateTime": {
"$date": 1541466008084
}
}
{
"_class": "Application",
"_id": "124",
"applicationTimeStamp": {
"$date": 1540080000000
},
"createdDateTime": {
"$date": 1540080000096
}
}
{
"_class": "Application",
"_id": "125",
"applicationTimeStamp": {
"$date": 1540080000000
},
"createdDateTime": {
"$date": 1540080000097
}
}
我正在使用以下 pandas 代码来尝试阅读它:
data_df = pd.read_json(r'/Month/Applications_test.json', lines = True)
我收到以下错误:
ValueError: Unexpected character found when decoding array value (2)
我想要的是一个熊猫数据框:
_class | _id | applicationTimeStamp | createdDateTime
Application | 123 | 10/07/2018 | 10/07/2018
Application | 124 | 10/07/2018 | 10/07/2018
Application | 125 | 10/07/2018 | 10/07/2018
如何将上面的 json 读入 pandas 数据帧?
谢谢!
【问题讨论】:
-
您能粘贴一个您正在使用的文件中包含的数据的小示例吗?或者更好的是,使用
StringIO重现您遇到的错误。比我更熟悉这个的人可能在没有看到你的数据的情况下知道解决方案,但发布它不会有坏处 -
对不起,我不明白你对数据的意思?文件中的数据就是上面贴出来的json
-
您上面发布的数据是代码的输出,而不是实际数据,因此我无法运行您提供的代码并重现您遇到的错误。可重现代码块的示例是
json_string = StringIO('''{ "name":"John", "age":100}''') pd.read_json(json_string, lines=True)这不会重现错误,但我不确定您的文件是什么样子才能重现错误。
标签: python json mongodb pandas