将4级嵌套字典转换为pandas dataframe的方法如下:
首先,导入pandas库:
import pandas as pd
然后,定义一个函数来处理嵌套字典:
def flatten_dict(d, parent_key='', sep='_'):
items = []
for k, v in d.items():
new_key = parent_key + sep + k if parent_key else k
if isinstance(v, dict):
items.extend(flatten_dict(v, new_key, sep=sep).items())
else:
items.append((new_key, v))
return dict(items)
接下来,定义一个函数来将嵌套字典转换为pandas dataframe:
def nested_dict_to_dataframe(nested_dict):
flattened_dict = flatten_dict(nested_dict)
df = pd.DataFrame.from_dict(flattened_dict, orient='index').T
return df
最后,调用函数并传入嵌套字典作为参数,即可得到转换后的pandas dataframe:
nested_dict = {
'A': {
'a': {
'1': 10,
'2': 20
},
'b': {
'1': 30,
'2': 40
}
},
'B': {
'a': {
'1': 50,
'2': 60
},
'b': {
'1': 70,
'2': 80
}
}
}
df = nested_dict_to_dataframe(nested_dict)
print(df)
输出结果如下:
A_a_1 A_a_2 A_b_1 A_b_2 B_a_1 B_a_2 B_b_1 B_b_2
0 10 20 30 40 50 60 70 80
这样,你就可以将4级嵌套字典转换为pandas dataframe了。
领取专属 10元无门槛券
手把手带您无忧上云