[英]Nested Nested column in Pandas Dataframe
在pandas数据框中有一个嵌套的嵌套列,我在json_normalize请求后收到该嵌套列,如下所示:
{
'Speed':352,
'type':[
{
'details':'change\n',
'id':'3129f48c-23a6-49bd-9854',
'machine':'logs',
'Cause':{
'code':'051',
'description':'Error',
'id':'41827d41-75c5-4c88-9ec3',
'reason':'Error'
}
}
],
'endTime':1522844263021,
'line':'73c2f337-46fc-415c-a24f',
'level':1,
'lineId':'9b6a5624-4add-4fce-9de3',
'loss':0,
'startTime':1522842642200
}
如何将其拆分为列? 我尝试使用lambda的方法,但这给了我错误'list index out of range'
,而且我也不知道如何处理第二个嵌套:
df['details'] = df.loc[:, 'type'].apply(lambda x: x[0]['details'])
如何解决这个任务?
json_normalize()的选项帮助我解决了这种情况:
df_df = json_normalize(df['values'], record_path=['type'], meta=['Speed','endTime', 'level','lineId', 'loss', 'startTime'])
如果我正确理解了您的问题,则说明您正在使用multiindex作为数据框的列。 尽管我不明白您要尝试做什么。
如果要访问子列“详细信息”,请尝试以下操作:
df['type']['details']
我无法保证它将正常工作,因为无法使用您提供的数据重新创建数据框
也许这会有所帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.