我有多个字典,我正在尝试将它们附加到一个数据框中。
import pandas as pd
dict1 = {'A': '1', 'B': [{'att1': 'value1', 'att2': 'value2'}]}
dict2 = {'A': '2', 'B': [{'att1': 'value3', 'att2': 'value4'}]}
df = pd.DataFrame()
dict = [dict1, dict2]
df['A'] = []
for i in range(0, 2):
df = df.append(dict[i]['B'])
df['A'] = (dict[i]['A'])
这给
A att1 att2
0 2 value1 value2
0 2 value3 value4
但是我想要
A att1 att2
0 1 value1 value2
0 2 value3 value4
任何人都可以帮忙吗?
建立您要附加的行:
for i in range(0, 2):
row = dict[i]['B']
row[0].update({'A': dict[i]['A']})
df = df.append(row)
print(df)
输出:
A att1 att2
0 1 value1 value2
A att1 att2
0 1 value1 value2
0 2 value3 value4
如果您研究如何从dict(或JSON对象)构建整个数据框架,这对您来说可能会更平滑。我只解决了眼前的问题。