我有一个父母:
id parentTerm isLeaf children
0 A F [{'_id': 'A1', 'parentTerm': 'B', 'isLeaf': F, 'children': [{'_id': 'A11', 'parentTerm': 'B', 'isLeaf': T, 'children':[]}]}]
对于其他parentdf数据帧,children列中的子级数不同
我想在父df.children中的每个字典中循环,并将其附加到数据帧中。不确定如何编写通过任意数量字典的循环
我尝试了pd.json_normalize,但由于子项在字典列表中,因此它不会返回平坦的输出
期望输出:
id parentTerm isLeaf
0 A F
A1 B F
A11 B T
请帮忙
我尝试了下面的代码,它是有效的:
def test_iterate(parent_df):
global total_data
total_data = total_data.append(parent_df[['_id', 'parentTerm','isLeaf']])
try:
parent_df['children'].apply(lambda x:test_iterate(pd.DataFrame(x)))
except Exception as inst:
#print(inst)
pass
total_data = pd.DataFrame()
test_iterate(parent_df)
但是我在调用aws lambda中的函数,它无法识别全局变量
将
total_data
作为参数传递给test_iterate
相关问题 更多 >
编程相关推荐