我有一个巨大的值列表,我已经下载了,我想构建并将它们插入数据帧。
我认为这很简单:
import pandas as pd
df = pd.DataFrame()
records = giant list of dictionary
df['var1'] = records[0]['key1']
df['var2'] = records[0]['key2']
我会得到一个数据框,例如
var1 var2
val1 val2
但是,我的数据框似乎是空的?我可以单独打印记录中的值没问题。
简单示例:
t = [{'v1': 100, 'v2': 50}]
df['var1'] = t[0]['v1']
df['var2'] = t[0]['v2']
我想成为:
var1 var2
100 50
答案 0 :(得分:1)
熊猫正是为你做的!
>>> import pandas as pd
>>> t = [{'v1': 100, 'v2': 50}]
>>> df=pd.DataFrame(t)
>>> df
v1 v2
0 100 50
修改强>
>>> import pandas as pd
>>> t = [{'v1': 100, 'v2': 50}]
>>> df=pd.DataFrame([t[0]['v1']], index=None, columns=['var1'])
>>> df
0
0 100
答案 1 :(得分:1)
您的词典列表中的一个条目看起来像是您传递给pd.Series
构造函数的内容。如果您想使用系列方法pd.DataFrame
,可以将其转换为pd.Series.to_frame
。我最后调换,因为我假设您希望字典代表一行。
pd.Series(t[0]).to_frame().T
v1 v2
0 100 50