从嵌套字典中的项目构建熊猫数据框架

从嵌套字典中的项目构建熊猫数据框架

假设我有一个具有结构的嵌套字典‘user_dict’:

第1级:用户ID(长整数)

2级:类别(字符串)

第3级:分类属性(浮点数、INT等)

例如,本词典的条目如下:

user_dict[12] = {
    "Category 1": {"att_1": 1, 
                   "att_2": "whatever"},
    "Category 2": {"att_1": 23, 
                   "att_2": "another"}}

“user_dict”中的每个项都具有相同的结构,“user_dict”包含大量的项目,我希望将这些项提供给熊猫DataFrame,从属性构建系列。在这种情况下,分层索引对此非常有用。

具体来说,我的问题是,是否有一种方法可以帮助DataFrame构造器理解这个系列应该从字典中的“第3级”的值构建?

如果我尝试这样的方法:

df = pandas.DataFrame(users_summary)

“第1级”(用户id)中的项被视为列,这与我想要实现的(以用户id作为索引)相反。

我知道我可以在遍历字典条目之后构建这个系列,但是如果有一种更直接的方法,这将是非常有用的。一个类似的问题是,是否有可能从文件中列出的JSON对象构建熊猫DataFrame。


哆啦的时光机
浏览 396回答 3
3回答

梵蒂冈之花

pd.concat接受字典。考虑到这一点,可以通过使用词典理解若要构建将键映射到子框架的字典,请执行以下操作。pd.concat({k: pd.DataFrame(v).T for k, v in user_dict.items()}, axis=0)或,pd.concat({         k: pd.DataFrame.from_dict(v, 'index') for k, v in user_dict.items()     },      axis=0)              att_1     att_212 Category 1     1  whatever   Category 2    23   another15 Category 1                   10       foo   Category 2    30       bar
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python