如何将字典的嵌套列表展平为多行?

生锈的沙克福德

我在pandas数据框中有一个看起来像这样的列:

col1         list_of_dictionaries
1           [{'id': 1,'tid': 1,'measure': 'time','i_id': 0,'type': 'time','time': '2000-06-19T05:08:11Z'},{'id': 2,'tid': 2,'measure': 'time','i_id': 1,'type': 'time','time': '2000-06-19T05:08:11Z'},{'id': 3,'tid': 3,'measure': 'time','i_id': 2,'type': 'time','time': '2000-06-19T05:08:11Z'},{'id': 4,'tid': 4,'measure': 'time','i_id': 1,'type': 'time','time': '2000-06-19T05:08:11Z','status': {'calendar': 0, 'business': 0}}]

如何将同一数据框中的字典列表弄平,使其看起来像这样?

col1    id   tid   measure i_id  type    time                 status.calendar     status.business                
1       1    1      time    0     time   2000-06-19T05:08:11Z    0                         0  
1       2    2      time    1     time   2000-06-19T05:08:11Z    0                         0
1       3    3      time    2     time   2000-06-19T05:08:11Z    0                         0
1       4    4      time    1     time   2000-06-19T05:08:11Z    0                         0

我想保留原始数据并在其中扩展,同时每次重复列名都创建更多行。

我在列上尝试了json_normalize,但出现错误:

AttributeError: 'str' object has no attribute 'values'

编辑:

x is a tuple according to spyder:

[
{
'
i
d
'
:
拉斐尔克

您可以在纯python中嵌套,然后使用 json_normalize

ids, x = zip(*[(id_, value) for id_, sub in zip(df['col1'], df.lod.values.tolist())\
                            for value in sub])
ndf = pd.io.json.json_normalize(x)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将包含列表的嵌套字典展平为字典

将嵌套字典展平为key:value对的列表

如何在python中将嵌套列表展平为字典?

如何将元组列表展平为pythonic列表

将嵌套namedtuple的列表展平到字典列表

将字典的嵌套列表展平到Pandas Dataframe中

使用 Ansible 将嵌套字典展平为键/值对

如何将嵌套字典的pandas列展平到每个键的单独列中

将嵌套列表展平为1个深度列表

将字典列表展平为数据框列

如何将嵌套的Java集合中的所有项目展平为单个List?

如何将嵌套的json键/值对展平为单个值数组?

如何将嵌套的 json 展平为数据框熊猫

如何将嵌套的对象数组展平为数组数组?

如何将嵌套表展平到新行?

如何将混合维数组展平为二维列表?

如何展平嵌套字典而不递归?

PostgreSQL:如何将表列展平为文本[]

如何将行展平为列(字段)值

如何将JSON数组展平为csv文件

如何将 JSON 中的数组展平为 Pandas

将字典展平为数据框

使用Haskell将随机嵌套列表展平为非嵌套列表

使用python中可能的字典列表展平嵌套字典

Python 3:展平嵌套字典和字典中的列表

如何将嵌套的哈希递归地展平为具有特定格式的数组的数组?

如何将大型的,复杂的,深度嵌套的JSON文件展平为多个CSV文件,这是链接标识符

as.data.frame将嵌套列表展平为单行,而不是为每个记录创建行

展平嵌套的字典 - 转换列表元素串