時系列データ ロングフォーマットからワイドフォーマットの変換 マルチインデックスのフラット化

# pivot で ロングフォーマットからワイドフォーマットに変換
waterlevel_df_wide = waterlevel_df.pivot(index=['date','station', 'river'], columns='hour' , values=['value'])

# 行の MultiIndex をフラット化
waterlevel_df_wide.columns = waterlevel_df_wide.columns.to_flat_index()

# 列の MultiIndex をフラット化
waterlevel_df_wide = waterlevel_df_wide.reset_index()

# 列名 再設定
waterlevel_df_wide.columns = ['date', 'station', 'river'] + ['w' + str(i) for i in range(24)]