4 回答
TA贡献1818条经验 获得超3个赞
IIUC,您可以编写一个列表理解并明智地连接您的数据帧轴。
import pandas as pd
d = [ {111: [1, 2, 3]}, {112:[4, 5, 6]}, {113:[7,8,9]}]
df = pd.concat([pd.DataFrame.from_dict(inner_dict,orient='columns') for inner_dict in d],axis=1)
print(df)
111 112 113
0 1 4 7
1 2 5 8
2 3 6 9
TA贡献1797条经验 获得超4个赞
试一试:collections.ChainMap
from collections import ChainMap
d = [{111: [1, 2, 3]}, {112:[4, 5, 6]}, {113:[7,8,9]}]
df = pd.DataFrame({**ChainMap(*d[::-1])})
Out[79]:
111 112 113
0 1 4 7
1 2 5 8
2 3 6 9
TA贡献1796条经验 获得超7个赞
import pandas as pd
a = [ {111: [1, 2, 3]}, {112:[4, 5, 6]}, {113:[7,8,9]}]
for item in a:
for k, v in item.items():
df[k] = v
df
111 112 113
0 1 4 7
1 2 5 8
2 3 6 9
TA贡献1801条经验 获得超15个赞
也许这个使用字典理解?
data = [{ 111: [1, 2, 3] }, { 112: [4, 5, 6] }, { 113: [7,8,9] }]
pd.DataFrame({ title: values for column in data for title, values in column.items() })
但是,您可能最好将数据存储为大熊猫可以立即识别的字典。{ title: [value] }
data = { 111: [1, 2, 3], 112: [4, 5, 6], 113: [7, 8, 9] }
pd.DataFrame(data)
添加回答
举报