我的数据表的请求主体在Kibana上有7列,如下所示:
{
"aggs": {
"2": {
"terms": {
"field": "efe_board",
"size": 999,
"order": {
"_count": "desc"
}
},
"aggs": {
"3": {
"terms": {
"field": "efe_fid",
"size": 999,
"order": {
"_count": "desc"
}
},
"aggs": {
"4": {
"terms": {
"field": "efe_die",
"size": 5,
"order": {
"_count": "desc"
}
},
"aggs": {
"5": {
"terms": {
"field": "efe_cycle",
"size": 5,
"order": {
"_count": "desc"
}
},
"aggs": {
"6": {
"terms": {
"field": "efe_block",
"size": 5,
"order": {
"_count": "desc"
}
},
"aggs": {
"7": {
"terms": {
"field": "efe_page",
"size": 5,
"order": {
"_count": "desc"
}
},
"aggs": {
"8": {
"terms": {
"field": "efe_page_type",
"size": 5,
"order": {
"_count": "desc"
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
},
...
}
如果我想重新创建一个整个表(可能是一个pandas DataFrame),我将不得不使用递归或深度嵌套的for循环来访问存储桶,提取数据,将它们存储在字典列表中并转换说到DF的名单。
我想知道是否有更好的方法来实现相同的效果而无需访问嵌套存储桶同时解决省略行的问题,例如如果没有数据efe_fid
,则不会查询剩余的嵌套字段。