Как создать DataFrame из словаря, который содержит DataFrames?
У меня есть словарь, который содержит данные для каждого ключа. Словарь происходит от этого кода:
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 ответ
Решение
Ты можешь использовать concat
с пониманием списка, чтобы объединить значения вашего словаря, и assign
добавить столбец с указанием города:
df = pd.concat([v.assign(city=k) for k, v in d.items()], ignore_index=True)