Python 当键的值是list of list时,如何将字典转换为dataframe?
我有一个看起来像这样的数据框Python 当键的值是list of list时,如何将字典转换为dataframe?,python,pandas,numpy,dataframe,dictionary,Python,Pandas,Numpy,Dataframe,Dictionary,我有一个看起来像这样的数据框 {'abc2035': [['abc3007', 2],['abc2006', 2],['abc2003', 1],['abc3000', 3]], 'abc2001': [['abc3002', 1],['abc2096', 2],['abc2003', 2],['abc3009', 3],['abc2015',3]], 'abc2052': [['abc1003', 2],['abc2090', 2]], . . .} userID with_com
{'abc2035': [['abc3007', 2],['abc2006', 2],['abc2003', 1],['abc3000', 3]],
'abc2001': [['abc3002', 1],['abc2096', 2],['abc2003', 2],['abc3009', 3],['abc2015',3]],
'abc2052': [['abc1003', 2],['abc2090', 2]],
.
.
.}
userID with_common no_of_common
abc2035 abc3007 2
abc2035 abc2006 2
abc2035 abc2003 1
abc2035 abc3000 3
abc2001 abc3002 1
abc2001 abc2096 2
abc2001 abc2003 2
abc2001 abc3009 3
abc2001 abc2015 3
.
.
.
我想把它转换成这样的数据帧
{'abc2035': [['abc3007', 2],['abc2006', 2],['abc2003', 1],['abc3000', 3]],
'abc2001': [['abc3002', 1],['abc2096', 2],['abc2003', 2],['abc3009', 3],['abc2015',3]],
'abc2052': [['abc1003', 2],['abc2090', 2]],
.
.
.}
userID with_common no_of_common
abc2035 abc3007 2
abc2035 abc2006 2
abc2035 abc2003 1
abc2035 abc3000 3
abc2001 abc3002 1
abc2001 abc2096 2
abc2001 abc2003 2
abc2001 abc3009 3
abc2001 abc2015 3
.
.
.
对此有任何帮助吗?请使用:
cols = ['userID',' with_common','no_of_common']
df = pd.DataFrame([(k, *x) for k, v in d.items() for x in v], columns=cols)
print (df)
userID with_common no_of_common
0 abc2035 abc3007 2
1 abc2035 abc2006 2
2 abc2035 abc2003 1
3 abc2035 abc3000 3
4 abc2001 abc3002 1
5 abc2001 abc2096 2
6 abc2001 abc2003 2
7 abc2001 abc3009 3
8 abc2001 abc2015 3
9 abc2052 abc1003 2
10 abc2052 abc2090 2