gpt4 book ai didi

python - 为什么使用 pandas.read_json 读取字符串整数不正确?

转载 作者:行者123 更新时间:2023-12-01 00:23:29 27 4
gpt4 key购买 nike

我不是一个夸张的人,但我真的被这个错误难住了,我相信你也会被难住......

这是一个简单的 json 对象:

[
{
"id": "7012104767417052471",
"session": -1332751885,
"transactionId": "515934477",
"ts": "2019-10-30 12:15:40 AM (+0000)",
"timestamp": 1572394540564,
"sku": "1234",
"price": 39.99,
"qty": 1,
"ex": [
{
"expId": 1007519,
"versionId": 100042440,
"variationId": 100076318,
"value": 1
}
]
}
]

现在我将文件保存到 ex.json 中,然后执行以下 python 代码:

import pandas as pd

df = pd.read_json('ex.json')

当我看到数据帧时,我的 id 值已从“7012104767417052471”更改为“7012104767417052160”py

有人明白为什么 python 会这样做吗?我在 Node、js 甚至 excel 中都尝试过,在其他方面看起来都很好..

如果我这样做,我会得到正确的 ID:

with open('Siva.json') as data_file:    
data = json.load(data_file)
df = json_normalize(data)

但我想了解为什么 pandas 不能以一种奇怪的方式正确处理 json。

最佳答案

这是一个已知问题:

import pandas as pd

df = pd.read_json('test.json', dtype={'id': 'int64'})

id session transactionId ts timestamp sku price qty ex
7012104767417052471 -1332751885 515934477 2019-10-30 12:15:40 AM (+0000) 2019-10-30 00:15:40.564 1234 39.99 1 [{'expId': 1007519, 'versionId': 100042440, 'variationId': 100076318, 'value': 1}]

关于python - 为什么使用 pandas.read_json 读取字符串整数不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58792118/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com