基于嵌套列表结构字典生成指定格式DataFrame的实现方法
实现思路
- 首先遍历双层嵌套字典的所有键值对,提取每一组的一级分类、特征名和对应的数值列表
- 将每组数据拼接为一维的行记录,汇总所有行记录为一个二维列表
- 直接基于二维列表生成DataFrame即可匹配你需要的输出格式,如果你需要数值带小数点格式,统一把数值转为float类型即可
代码实现
import pandas as pd # 定义原始嵌套字典 dictionary = {'ss':{'feat1':[12,8173,9173,13], 'feat2':[73,1938,183,38]}, 'dd':{'feat1':[324,42,56,839], 'feat2':[13,398,817,9173]}} # 构造行数据列表 rows = [] for level1_key, feat_dict in dictionary.items(): for feat_name, value_list in feat_dict.items(): # 拼接一级分类、特征名、数值列表为一行,需要带小数点就把value_list转成float:[float(x) for x in value_list] rows.append([level1_key, feat_name] + value_list) # 转换为DataFrame df = pd.DataFrame(rows) # 可根据需求自定义列名,比如:df.columns = ['一级分类', '特征名', '值1', '值2', '值3', '值4'] print(df)
内容的提问来源于stack exchange,提问作者John
相关产品推荐
相关产品推荐

