前提・実現したいこと
python
for文を使って順次作ったデーターフレームを1つのデーターフレームにまとめていく方法を教えて頂けないでしょうか?
1列ごとの要素から予測したデータを集約したいのですが、うまく出来ず苦戦しております。
せいぜいprintで個々に表示させることはできたのですが、その後前に進めません。
宜しくお願い致します。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
python
1 2import pandas as pd 3import datetime as dt 4#Prophet インストール 5!pip3 install pystan 6!pip3 install fbprophet 7from fbprophet import Prophet 8 9df_sample = pd.DataFrame({'ds': [42461,42462,42463,42464,42465], 10 'B': [25,26,27,28,29], 11 'C': [110,111,112,113,114], 12 'D': [125,126,127,128,129], 13 'E': [222,224,226,228,230]}, 14 index=['ONE', 'TWO', 'THREE','FOUR','FIVE']) 15 16#シリアル値を変換 閏年補正あり 17df_sample['ds']=pd.to_timedelta(df_sample['ds'].astype('float') - 2, unit='D') + pd.to_datetime('1900/1/1') 18 19#関数でできないか 20i = 1 21def func(): 22 _df = df_sample.iloc[:,[0,i]] 23 24#prophetの書式に揃える'y''ds' 25 _df.columns = ['ds','y'] 26 27#prophetへ投入 28#モデルの構築 29 model = Prophet() 30 model.fit(_df) 31 32#5日先まで予測 33 future = model.make_future_dataframe(5,freq='d') 34 forecast_d = model.predict(future) 35 forecast_agg = forecast_d.iloc[:,[0,-1]] 36 37#forecastに_dfを結合 38 df_merge = pd.merge(forecast_agg,_df,on='ds',how='left') 39 40#columnの並べ替えと必要事項のみ 41 df_m = df_merge.iloc[:,[0,1,-1]] 42 43#シンプルに結合できるようにもとのdfを必要列のみに絞る 44 df_s = df_sample.iloc[:,[0,i]] 45 46#meage結合 47 df_m_merge = pd.merge(df_m,df_s,on='ds',how='left') 48 df_drop = df_m_merge.drop('y',axis=1) 49 print(df_drop) 50 51#printで表示 52for i in range(4): 53 i += 1 54 print(func()) 55
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/02 11:10
2021/05/03 05:00