如何从存在可变键的嵌套字典中创建DataFrame?
字典转指定结构DataFrame实现方法
你可以直接使用pandas的DataFrame.from_dict方法完成转换,指定orient='index'参数即可将外层字典的键作为行索引,内层字典的键作为列名:
import pandas as pd # 原始字典 d = {'Tom' :{'A' : '25', 'B' : '34'}, 'Jim' : {'A' : '34', 'B' : '19'}, 'john' : {'A' :'56' , 'B' : '32'}} # 转换为目标结构DataFrame df = pd.DataFrame.from_dict(d, orient='index')
如果需要匹配示例里John首字母大写的格式,以及将A、B列的字符串值转为数值类型,可以追加以下处理:
# 索引名首字母大写 df.index = df.index.str.capitalize() # 列值转换为整数类型 df[['A', 'B']] = df[['A', 'B']].astype(int)
你也可以用更简洁的转置写法实现相同效果:
df = pd.DataFrame(d).T
处理完成后输出的df结构和你要求的完全一致。
内容的提问来源于stack exchange,提问作者user12252991
相关产品推荐
相关产品推荐

