繁体   English   中英

Python 嵌套字典到 pandas df

[英]Python nested dictionary to pandas df

我正在尝试将我的嵌套字典转换为 pandas DataFrame。 我的字典看起来像:

my_dict = {'google.com' : {'111,\n222,\n333,\n444' : 'google.com/111,\ngoogle.com/222,\ngoogle.com/333,\ngoogle.com/444'},
            'bing.com'  : {'111,\n222,\nE321A,\n123x' : 'bing.com/111,\nbing.com/222,\nbing.com/E321A,\nbing.com/123x'}}

我需要得到 output 为: 在此处输入图像描述

我尝试使用:

    pd.DataFrame.from_dict()

但是没有得到想要的 output。

尝试这个:

parsed_dict = {
    k: dict(zip(list(v.keys())[0].split(",\n"), list(v.values())[0].split(",\n")))
    for k, v in my_dict.items()
}

df = pd.concat(
    {k: pd.DataFrame.from_dict(v, "index") for k, v in parsed_dict.items()}, axis=0
)
df = df.reset_index()
df.columns = names=['Domain', 'ID','Link'] 
df.set_index(['Domain', 'ID'], inplace=True)

parsed_dict 
{'google.com': {'111': 'google.com/111', '222': 'google.com/222', '333': 'google.com/333', '444': 'google.com/444'}, 'bing.com': {'111': 'bing.com/111', '222': 'bing.com/222', 'E321A': 'bing.com/E321A', '123x': 'bing.com/123x'}}
df

                            Link
Domain     ID                   
google.com 111    google.com/111
           222    google.com/222
           333    google.com/333
           444    google.com/444
bing.com   111      bing.com/111
           222      bing.com/222
           E321A  bing.com/E321A
           123x    bing.com/123x

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM