第5章 データ準備・可視化技法とモデル化(モデル化)
DS検定の時系列分析と移動平均の計算例
DS検定(リテラシーレベル)の公式スキルチェックリストのモデル化には、時系列分析が★1つ星の項目として3つ入っています。時系列データは、日ごとや月ごとの売上のように、時間の順に並んだデータです。用語を暗記するだけでは数字を示されたときに迷うので、このページでは、移動平均、トレンドと季節成分、時間軸での分割、見せかけの相関を、小さな架空の数字で1回ずつ確かめます。時系列データは、順番そのものに意味があるので、順番を無視した扱いをすると結果がゆがみます。
このページは試験の学習用の整理です。数字はすべて説明用の架空の値です。
公式情報の確認
試験日、料金、申込条件、試験方式など変動する情報は、公式情報を最終確認してください。 当サイトの一次情報確認日: 2026-10-02。
試験の出題範囲・実施要項は変動するため、受験前に公式情報を確認してください。
結論
- 移動平均は、連続する数期の平均を1期ずつずらして求め、細かな上下を均して全体の動きを見る
- 時系列は、長期のトレンド、季節成分、ノイズなどに分けて眺める。例では年平均が110から120へ上がるのがトレンド、四半期ごとの差が季節成分
- 学習用とテスト用は、無作為ではなく時間の古い側と新しい側で分ける
- 時間とともに増えているだけの2系列でも、相関係数は高く出る
移動平均
公式チェックリストは、時系列グラフによる周期性やトレンドの確認、移動平均などの基礎的な扱いを説明できることを★1つ星としています。月ごとの売上が10、14、12、16、14、18、16(万円)と上下しながら動いているとき、連続する3か月の平均を1か月ずつずらして求めたものが、3項移動平均です。
| 月 | 売上(万円) | その月を中心にした3項移動平均 |
|---|---|---|
| 1月 | 10 | ― |
| 2月 | 14 | (10+14+12)÷3=12 |
| 3月 | 12 | (14+12+16)÷3=14 |
| 4月 | 16 | (12+16+14)÷3=14 |
| 5月 | 14 | (16+14+18)÷3=16 |
| 6月 | 18 | (14+18+16)÷3=16 |
| 7月 | 16 | ― |
元の売上は10から18まで細かく上下しますが、移動平均は12、14、14、16、16と、ゆるやかな上昇として読めます。移動平均は、上下の細かな動き(ノイズ)を均して、全体の方向を見やすくする計算です。なお、両端の1月と7月は、前後の月がそろわないので値が出ません。均す期間を長くするほど線はなめらかになりますが、その分、変化に気づくのが遅れます。
トレンドと季節成分
公式チェックリストは、時系列分析を行う際にもつべき視点として、長期トレンド、季節成分、周期性、ノイズ、定常性などを理解していることを★1つ星としています。四半期ごとの売上(万円)を2年分並べた次の表で、2つの成分を取り出します。
| 四半期 | 1年目 | 2年目 | その年の平均との差(両年とも同じ) |
|---|---|---|---|
| 第1四半期 | 100 | 110 | −10 |
| 第2四半期 | 140 | 150 | +30 |
| 第3四半期 | 120 | 130 | +10 |
| 第4四半期 | 80 | 90 | −30 |
- 1年目の平均は(100+140+120+80)÷4=110、2年目の平均は(110+150+130+90)÷4=120。年が進むと平均が10上がるのが、長期のトレンド
- 各四半期の値から、その年の平均を引いた差は、どちらの年も−10、+30、+10、−30。1年周期で同じ形をくり返すのが、季節成分
値は「トレンド+季節成分+ノイズ」の重なりとして読めます。この例は説明のために、ノイズがない形にしてあります。実際のデータでは、トレンドと季節成分で説明できない残りがノイズになります。定常性は、時間がたっても平均やばらつきが変わらない性質で、この例のようにトレンドがあるデータは定常ではありません。
時間軸での分割
公式チェックリストは、時系列データの場合に、時間軸で訓練データとテストデータに分割する理由を理解していることを★1つ星としています。2024年1月から2025年12月までの24か月分の売上があるとします。
- 時間軸で分ける場合:2024年1月から2025年6月までの18か月で学習し、2025年7月から12月までの6か月で評価する。過去から未来を当てる、実際の使い方と同じ形
- 無作為に分ける場合:24か月のうち18か月を無作為に選んで学習すると、2025年の値を学習に使って、2024年の値を当てる場面が出てくる
実際の運用では、未来の値を見て予測することはできません。無作為に分けると、使えないはずの未来の情報が学習に入り、評価の結果が実力より良く見えます。このため、時間の古い側を訓練用、新しい側をテスト用にします。
相関計算の注意点
公式チェックリストの時系列の基礎には、回帰や相関計算における注意点も含まれています。たとえば、5年間の売上が10、12、14、16、18(万円)、検索回数が100、120、140、160、180(回)と、どちらも毎年一定の量ずつ増えていたとします。2つの系列は同じ割合で直線的に増えているので、相関係数は1になります。
相関係数が1でも、売上と検索回数の間に原因と結果の関係があるとは限りません。どちらも「年が進むと増える」というトレンドを共通してもっているだけかもしれないためです。時系列データで相関や回帰を調べるときは、まずトレンドの影響を疑います。前の期との差のように、トレンドを取り除いた値で比べる方法もあります。
DS検定の学習に使う書籍(Amazon)
試験範囲を通して読むときの1冊です。読んだ章は、このサイトの章別問題で確かめられます。
よくある質問
DS検定で、時系列分析はどこまで必要ですか?
公式スキルチェックリスト(data_science.csv)で★1つ星なのは、時系列データとは何かと基礎的な扱い(時系列グラフによる周期性やトレンドの確認、移動平均、回帰や相関計算における注意点など)を説明できること、時間軸で訓練データとテストデータに分ける理由を理解していること、長期トレンド・季節成分・周期性・ノイズ・定常性といった視点をもつことです。自己相関やコレログラムの評価は★2つ星に入っています。
移動平均は、何のために計算しますか?
細かな上下を均して、全体の動きを見やすくするためです。3項移動平均なら、連続する3期の平均を1期ずつずらして求めます。均す期間を長くするほど線はなめらかになりますが、変化に気づくのは遅れます。
時系列データを、ふつうのデータのように無作為に分けてはいけないのですか?
分けないほうがよいのは、過去のデータで学習し未来を予測する場面を、評価でも再現するためです。無作為に分けると、未来の値を学習に使って過去の値を当てる形になり、実際の運用より良い結果が出てしまいます。時間の古い側を訓練用、新しい側をテスト用にします。
2つの系列の相関が高ければ、関係があると言えますか?
言えません。どちらも時間とともに増えているだけの2系列でも、相関係数は高く出ます。時系列データで回帰や相関を計算するときは、トレンドの影響を疑う必要があります。
