【问题标题】:Flatten the data frame column of list containing nested dictionaries in a unique way shown以独特的方式展平包含嵌套字典的列表的数据框列
【发布时间】:2021-08-22 07:43:00
【问题描述】:

以如下所示的方式展平嵌套字典列表的数据框列。

伙计们,我是 python 新手,但我正在努力实现目标,但不幸的是无法做到。

当前数据框:

col1    col2
path1    [{sheetname1:{value11:length11,value12:length12,value13:length13...}},
          {sheetname2:{value21:length21,value22:lenth22,...}}]

产生的数据农场:

col1    col2          col3     col4
path1   sheetname1   value11     length11
path1   sheetname1   value12     length12
path1   sheetname1   value13     length13
...
...
...
path1   sheetname2  value21    length21
path1   sheetname2  value22    length22
...
...

【问题讨论】:

    标签: python json dataframe dictionary flatten


    【解决方案1】:

    试试:

    data = []
    for col1, row in zip(df["col1"], df["col2"]):
        for d in row:
            for k, v in d.items():
                for kk, vv in v.items():
                    data.append({"col1": col1, "col2": k, "col3": kk, "col4": vv})
    
    df = pd.DataFrame(data)
    print(df)
    

    打印:

        col1        col2     col3      col4
    0  path1  sheetname1  value11  length11
    1  path1  sheetname1  value12  length12
    2  path1  sheetname1  value13  length13
    3  path1  sheetname2  value21  length21
    4  path1  sheetname2  value22   lenth22
    

    【讨论】:

    • 我爱你,兄弟,你救了我的命,为你送上无数祝福!!
    猜你喜欢
    • 2023-02-20
    • 2019-01-11
    • 2020-05-10
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 2020-09-06
    • 2021-12-13
    • 2021-04-18
    相关资源
    最近更新 更多