我是 Python 新手,所以請(qǐng)多多包涵。我正在嘗試將我認(rèn)為可能是嵌套字典的內(nèi)容轉(zhuǎn)換為可以導(dǎo)出的 csv。下面是我的代碼:import pandas as pdimport os from fbprophet import Prophet# Read in Filedf1 = pd.read_csv('File_Path.csv')#Create Loop to Forecast Multiple SKUsdef get_prediction(df):prediction = {}df1 = df.rename(columns={'Date': 'ds','qty_ordered': 'y', 'item_no': 'item'})list_items = df1.item.unique()for item in list_items: item_df = df1.loc[df1['item'] == item] # set the uncertainty interval to 95% (the Prophet default is 80%) my_model = Prophet(yearly_seasonality= True, seasonality_prior_scale=1.0) my_model.fit(item_df) future_dates = my_model.make_future_dataframe(periods=12, freq='M') forecast = my_model.predict(future_dates) prediction[item] = forecastreturn prediction# Save predictions to dictionarydf2 = get_prediction(df1)# Convert dictionarydf3 = pd.DataFrame.from_dict(df3, index='columns)所以代碼的最后一部分是我苦苦掙扎的地方。我需要將 df2 字典轉(zhuǎn)換為數(shù)據(jù)框 (df3),以便將其導(dǎo)出為 csv。但它看起來好像是一個(gè)嵌套字典?不確定我是否需要更新我的功能。這是字典片段的樣子我需要導(dǎo)出它,所以它看起來像這樣
2 回答

一只斗牛犬
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
下面的代碼應(yīng)該有助于展平df2(如果我理解正確的話,數(shù)據(jù)框的字典)。
def flatten(dict_of_df):
# insert column 'item'
for key, value in dict_of_df.items():
value['item'] = key
# return vertically concatenated dataframe with all the items
return pd.concat(dict_of_df.values())
添加回答
舉報(bào)
0/150
提交
取消