Python 数据帧中包含嵌套DICT的DICT列表
我有一张单子。这些格言中的一些对象就是格言本身。我想把它变成一个数据帧。这是我目前得到的Python 数据帧中包含嵌套DICT的DICT列表,python,dictionary,pandas,dataframe,Python,Dictionary,Pandas,Dataframe,我有一张单子。这些格言中的一些对象就是格言本身。我想把它变成一个数据帧。这是我目前得到的 In[163]: res = [{'A':1,'B':{'C':3,'D':4}},{'A':5,'B':{'C':7,'D':8}}] pd.DataFrame(res) Out[163]: A B 0 1 {u'C': 3, u'D': 4} 1 5 {u'C': 7, u'D': 8} 这就是我想要的: A BC BD 0 1 3 4 1
In[163]:
res = [{'A':1,'B':{'C':3,'D':4}},{'A':5,'B':{'C':7,'D':8}}]
pd.DataFrame(res)
Out[163]:
A B
0 1 {u'C': 3, u'D': 4}
1 5 {u'C': 7, u'D': 8}
这就是我想要的:
A BC BD
0 1 3 4
1 5 7 8
我并不真正关心列标题的名称。他们可以是任何人
import pandas as pd
res = [{'A':1,'B':{'C':3,'D':4}},{'A':5,'B':{'C':7,'D':8}}]
df = pd.DataFrame(res)
def col2frame(col):
try:
res = pd.DataFrame.from_records(col)
res.columns = [col.name+name for name in res.columns]
return res
except TypeError:
return col
df = pd.concat([col2frame(df[col]) for col in df], axis=1)
print(df)
屈服
A BC BD
0 1 3 4
1 5 7 8