[英]How to read mongodb exported Json in pandas dataframe
我正在使用以下代碼從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)
我想要的是一個pandas數據幀:
_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讀入熊貓數據幀?
謝謝!
你必須以這種方式使用read_json:
df = pd.read_json(path_or_buf="file_path\json.txt", typ='frame')
它返回一個數據幀,如:
_class _id applicationTimeStamp createdDateTime
$date Application 123 1541466008000 1541466008084
要么:
_class ... createdDateTime
0 Application ... {'$date': 1541466008084}
1 Application ... {'$date': 1540080000096}
2 Application ... {'$date': 1540000000097}
那么你可以轉換時間戳。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.