2000年以降のNYCオゾンデータに対する360日ローリングの中央値と標準偏差
前の動画では、.groupby() と同様に .agg() メソッドを使って複数のローリング統計量を計算する方法も紹介しました。
これまでに見たオゾンのデータを使って、NYC の大気質の推移をもう少し詳しく見ていきます。日次データは変動が大きいため、より長期のローリング平均を使うと長期トレンドが見えやすくなります。
ここでは360日のローリングウィンドウを使い、2000年以降のオゾン日平均値に対して、.agg() でローリングの平均と標準偏差を計算します。
この演習はコースの一部です
Pythonでの時系列データ操作
演習の手順
pandas は pd、matplotlib.pyplot は plt としてすでにインポート済みです。
pd.read_csv()を使って'ozone.csv'を読み込み、parse_datesとindex_colを使って'date'列からDateTimeIndexを作成し、結果をdataに代入してから.dropna()で欠損値を落とします。'Ozone'列を選択し、360期間の.rolling()ウィンドウを作成して.agg()を適用し、meanとstdを計算してrolling_statsに代入します。.join()を使ってdataとrolling_statsを連結し、statsに代入します。subplotsを使ってstatsをプロットします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import and inspect ozone data here
data = ____
# Calculate the rolling mean and std here
rolling_stats = ____
# Join rolling_stats with ozone data
stats = ____
# Plot stats