Dict追加 - 多列

时间:2017-06-26 12:47:00

标签: python-3.x pandas dictionary

在使用df.from_dict将所有数据更有效地转换为数据帧之前,我首先尝试将数据帧构建为dict。

我使用以下方法设置了一个具有正确结构的空字典:

d =df.head(0).to_dict()

看来我可以通过这样的方式添加到“第一行”: d [ '用户ID'] = 1 d [ 'EstProb'] = 1 等

这给了我dict输出:

{'EstProb': 1, 'PlayCount': 1, 'PlayDate': 1, 'Timeslot': 1, 'UserID': 1}

但是如何超越这一行并继续在dict中添加更多行?

1 个答案:

答案 0 :(得分:0)

好的,我在这里解决了这个问题:

我首先创建了一个空的嵌套dict结构,如下所示:

d={}
d['UserID']={}
d['PlayDate']={}
d['Timeslot']={}

我也初步确定了i =0

然后我经历了一个循环并建立了我的嵌套字典,如下所示:

for x in range (0, 100):
    d['UserID'][i] = u[x]
    d['PlayDate'][i] = p[x]
    d['Timeslot'][i] = t[x]
    i+=1

最后我将dict变成了这样的数据框:

df=df.from_dict(d)

与使用dataframe.append的先前方法相比,新解决方案的工作速度更快(6秒对30分钟)