很多时候我们在数据分析时所获取的内容往往都是嵌套的json或者字典等负责格式,下面是通过递归的形式遍历出全部的内容,然后重新赋值key。
import pandas as pd
def json_dic(i, key1, my_dic):
for key in i:
if type(i[key]) == dict:
key1 = key
json_dic(i[key], key1, my_dic)
if type(i[key]) == list:
for m in i[key]:
json_dic(m, key1, my_dic)
else:
print(key1 + '_' + key, i[key])
my_dic[key1 + '_' + key] = i[key]
return my_dic
data = [{'name':'tom','namelist':{'name1':'tom1','name2':'tom2'}},{'name':'jim','namelist':{'name1':'jim1','name2':'jim2'}}]
key1 = ''
my_list = []
for i in data:
my_dic = json_dic(i, key1, {})
my_list.append(my_dic)
df = pd.DataFrame(my_list, columns=my_dic.keys())
df.to_excel("D:\\桌面/ding.xlsx")
该博客展示了如何使用递归函数遍历嵌套的JSON或字典结构,并将内容转换为DataFrame,以便于数据分析。示例中,作者创建了一个递归函数`json_dic`,该函数遍历每个字典和列表,重组键值对,并最终将结果存储到DataFrame中,然后导出到Excel文件。

被折叠的 条评论
为什么被折叠?



