【发布时间】:2019-08-17 23:48:41
【问题描述】:
import pandas as pd
import os
list_of_dict2 = [[{'1580674': ['HA-567034786', 'AB-1018724']}], [{'1554970': ['AB-6348403', 'HA-7298656']}, {'1554970': ['AB-2060953', 'HA-990228']}, {'1554970': ['HA-7287204', 'AB-1092380','GR-33333']}]]
list_of_dict = []
for i in list_of_dict2:
for j in i:
list_of_dict.append(list(j.values())[0])
df = pd.DataFrame(list_of_dict)
print(df)
我当前的数据框结果
0 1 2
0 HA-567034786 AB-1018724 None
1 AB-6348403 HA-7298656 None
2 AB-2060953 HA-990228 None
3 HA-7287204 AB-1092380 GR-33333
使用字典列表,我可以使用以下代码生成数据框。但我的问题是我有一些 多对多字典列表的问题。让我解释一下我想要实现的目标。
例如,对于数据框的每一行,我想让它成为多对多的字典,列表上有多个值。说,最后一个 index 3 我想像下面这样
预期输出:(对于第二个索引)
{
"AB-2060953" : ['HA-990228'],
"HA-990228" : ['AB-2060953']
}
预期输出:(对于第三个索引)
{
"HA-7287204" : ['AB-1092380','GR-33333'],
"AB-1092380" : ['HA-7287204','GR-33333'],
"GR-33333" : ['AB-1092380','HA-7287204']
}
【问题讨论】:
-
在您的最终预期输出中,为什么是
"GR-33333" : ['AB-1092380','GR-33333']而不是"GR-33333" : ['AB-1092380','HA-7287204'] -
谢谢伙计,这是一个错字:P
标签: python pandas list dataframe dictionary