我很好奇如何使用pandas读取以下结构的嵌套json:
{
"number": "",
"date": "01.10.2016",
"name": "R 3932",
"locations": [
{
"depTimeDiffMin": "0",
"name": "Spital am Pyhrn Bahnhof",
"arrTime": "",
"depTime": "06:32",
"platform": "2",
"stationIdx": "0",
"arrTimeDiffMin": "",
"track": "R 3932"
},
{
"depTimeDiffMin": "0",
"name": "Windischgarsten Bahnhof",
"arrTime": "06:37",
"depTime": "06:40",
"platform": "2",
"stationIdx": "1",
"arrTimeDiffMin": "1",
"track": ""
},
{
"depTimeDiffMin": "",
"name": "Linz/Donau Hbf",
"arrTime": "08:24",
"depTime": "",
"platform": "1A-B",
"stationIdx": "22",
"arrTimeDiffMin": "1",
"track": ""
}
]
}
这里保持数组为json。我宁愿把它扩展成列。
pd.read_json("/myJson.json", orient='records')
谢谢你的第一个回答。 我应该完善我的问题: 数组中嵌套属性的展平不是必需的。 只需[A,B,C]连接df.locations['name']就可以了。
我的文件包含多个JSON对象(每行1个),我希望保留number、date、name和locations列。不过,我需要加入这些地点。
allLocations = ""
isFirst = True
for location in result.locations:
if isFirst:
isFirst = False
allLocations = location['name']
else:
allLocations += "; " + location['name']
allLocations
我在这方面的做法似乎没有效率/熊猫式。
您可以使用^{} :
编辑:
您可以使用^{} 通过} 使用apply
DataFrame
构造函数解析name
,最后一个^{join
:相关问题 更多 >
编程相关推荐