我正在尝试使用 python 加载 JSON 数据,但是,它看起来像这样:
{
"instrument" : "EUR_USD",
"granularity" : "D",
"candles" : [
{
"time" : "2014-07-02T04:00:00.000000Z", // time in RFC3339 format
"openMid" : 1.36803,
"highMid" : 1.368125,
"lowMid" : 1.364275,
"closeMid" : 1.365315,
"volume" : 28242,
"complete" : true
},
{
"time" : "2014-07-03T04:00:00.000000Z", // time in RFC3339 format
"openMid" : 1.36532,
"highMid" : 1.366445,
"lowMid" : 1.35963,
"closeMid" : 1.3613,
"volume" : 30487,
"complete" : false
}
]
}
我的问题是,当我使用 Pandas 加载它时,仪器、粒度和蜡烛被处理为列标题。但是,我想使用 time、openMid、highMid、lowMid、closeMid、volume 和complete 来创建我的列。但它们只是作为蜡烛的附属品进行加工。关于如何实现这一目标有什么想法吗?谢谢
最佳答案
您必须首先使用 json
库读取字符串:
import json
data = json.loads(string)
然后您可以从结果字典中提取蜡烛数据并以这种方式构建您的 DataFrame,例如:
candles_data = data.pop('candles')
df = pd.DataFrame(candles_data)
for k, v in data.iteritems():
df[k] = v
关于python - 使用 Python/Pandas 处理嵌套在 JSON 中的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35069876/