Как создать DataFrame из словаря, который содержит DataFrames? - PullRequest
0 голосов
/ 05 июля 2018

У меня есть словарь, который содержит данные для каждого ключа. Словарь происходит от этого кода:

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 голосов
/ 05 июля 2018

Вы можете использовать concat с пониманием списка, чтобы объединить значения словаря, и assign, чтобы добавить столбец с указанием города:

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