如何从包含DataFrames的字典中创建DataFrame?

时间:2018-07-05 10:43:11

标签: python pandas dictionary dataframe weather-api

我有一个字典,其中包含每个键的数据框。字典来自以下代码:

for city in a:
        forecast = api.get_forecast(city='city')
        b = pd.DataFrame(forecast.get_series(['temp','precip','clouds','weather']))
        for lab,row in b.iterrows():
            b.loc[lab,"Forecast"]=b.iloc[lab][4]['description']
        b= b.drop(['weather'],axis=1)
        d[city]=b

这样我每个城市都有几个时间单位的天气特征。我想创建一个包含所有关键字的新数据框,并为其中的所有关键字的每个关键字添加一个附加列。这一步是必要的,因为我需要将其上传到Amazon redshift。

1 个答案:

答案 0 :(得分:1)

您可以结合使用concat和列表理解来组合字典值,并使用assign添加一列给出城市的信息:

df = pd.concat([v.assign(city=k) for k, v in d.items()], ignore_index=True)