スプレッドシートのCOVAR関数の使い方|共分散でデータの関連性を分析

スポンサーリンク

「広告費と売上の関係をデータで示したいけど、相関係数とは別の指標もあるのかな?」

2つのデータの関連性を調べたいとき、相関係数だけでは見えない情報があります。データの「動きの大きさ」まで含めた関連性を数値にしたい場面です。

そんなときに使えるのが COVAR関数 です。基本の書き方から共分散の読み取り方、相関係数との違い、実務での活用例まで解説します。

COVAR関数とは?2つのデータの共分散を求める関数

COVAR関数(読み方: コバリアンス関数)は、2つのデータセットの共分散を返す統計関数です。「COVAR」は「Covariance(共分散)」の略になります。

共分散とは、2つのデータがどの方向にどれくらい一緒に動くかを表す指標です。

  • 正の値: 一方が増えるともう一方も増える傾向(同じ方向に動く)
  • 負の値: 一方が増えるともう一方は減る傾向(逆方向に動く)
  • 0に近い: 2つのデータに関連性がほぼない

身近な例でいうと、「気温が上がるとアイスの売上も上がる」なら正の共分散です。逆に「気温が上がると鍋の売上は下がる」なら負の共分散になります。

COVAR関数にできることをまとめると、次のとおりです。

NOTE

COVAR関数はGoogleスプレッドシートの全バージョンで使えます。ExcelのCOVARIANCE.P関数と同じ計算を行います。

COVAR関数の書き方(構文と引数)

基本構文

=COVAR(データ_y, データ_x)

カッコの中に、共分散を調べたい2つのデータ範囲を指定します。

引数の説明

引数必須/任意説明
データ_y必須比較したいデータ範囲の1つ目(例: 売上データ)
データ_x必須比較したいデータ範囲の2つ目(例: 広告費データ)

引数はたった2つだけなのでシンプルですよね。注意点として、データ_yとデータ_xのデータ数は同じにする必要があります。データ数が異なると #N/A エラーが出ます。

TIP

範囲内の文字列・TRUE/FALSE・空白セルは自動的に無視されます。ただし、一方が数値で他方が空白というペアがあると、そのペアごと計算から除外されます。

COVAR関数の基本的な使い方

実際にCOVAR関数を使ってみましょう。

あるお店で6か月分の「広告費」と「売上」を記録したとします。

 A列(月)B列(広告費・万円)C列(売上・万円)
2行目4月30200
3行目5月50320
4行目6月40280
5行目7月60400
6行目8月45310
7行目9月70450

共分散を求める

=COVAR(C2:C7, B2:B7)

結果は約 1,341.67 になります。正の値なので、広告費と売上は同じ方向に動くことがわかりますね。

共分散の符号の読み取り方

COVAR関数の結果は相関係数のように-1〜1の範囲に収まりません。データのスケール(単位や大きさ)によって値が変わります。

そのため、共分散では符号(正か負か)で関連の方向を判断します。

共分散の符号意味解釈
正の値(0より大きい)正の関連一方が増えるともう一方も増える
負の値(0より小さい)負の関連一方が増えるともう一方は減る
0に近い関連なし2つのデータは独立して動く

WARNING

共分散の値そのものの大小で「関連が強い・弱い」と判断するのは危険です。共分散はデータの単位に依存するため、異なるデータセット間で比較できません。強弱を比較したいときは2026-03-21-spreadsheet-correl-function“>CORREL関数で相関係数を求めてください。

共分散と相関係数の違い

「共分散と相関係数って何が違うの?」と思った方もいるかもしれません。ここで整理しておきましょう。

項目共分散(COVAR関数)相関係数(CORREL関数)
値の範囲制限なし(データのスケールに依存)-1 〜 1
わかること関連の「方向」と「規模」関連の「方向」と「強さ」
データ間の比較単位が異なると比較できない正規化されているため比較可能
計算式Σ((xi – x平均)(yi – y平均)) / n共分散 / (xの標準偏差 x yの標準偏差)
主な用途ポートフォリオ分析、データの方向確認2つのデータの関連度を測定

実は、相関係数は共分散を標準偏差で割って正規化したものです。COVAR関数とCORREL関数は次の関係式で結ばれています。

CORREL(y, x) = COVAR(y, x) / (STDEVP(y) * STDEVP(x))

「方向だけ知りたい」ならCOVAR関数、「強さまで比較したい」なら2026-03-21-spreadsheet-correl-function“>CORREL関数を使い分けましょう。

COVAR関数の実践的な使い方・応用例

複数商品の売上関連を比較する

複数の商品を扱っている場合、「商品Aと商品Bの売上は連動しているか?」を確認できます。

商品A(D列)・商品B(E列)・商品C(F列)の月次売上データがあるとして、共分散を比べてみましょう。

=COVAR(D2:D13, E2:E13)   → 商品AとBの共分散
=COVAR(D2:D13, F2:F13)   → 商品AとCの共分散

両方とも正なら「Aが売れるとBもCも売れる傾向」です。片方が負なら「Aが売れるとそちらは売れなくなる傾向」と読み取れます。

ただし、値の大小で「BよりCの方が関連が強い」とは判断できません。強さの比較には2026-03-21-spreadsheet-correl-function“>CORREL関数を使ってくださいね。

ポートフォリオのリスク分析に使う

投資の世界では、共分散はポートフォリオ理論の核となる指標です。2つの資産の共分散がわかれば、組み合わせたときのリスクを計算できます。

たとえば、株式A(G列)と株式B(H列)の月次リターン(収益率)が12か月分あるとします。

=COVAR(G2:G13, H2:H13)

結果が負の共分散なら、AとBは逆方向に動く傾向があります。AとBを組み合わせれば、ポートフォリオ全体のリスクを下げられる可能性がありますよ。

TIP

ポートフォリオの分散を計算する公式には共分散が含まれています。2資産の場合: wA^2 VarA + wB^2 VarB + 2 wA wB * COVAR(A, B) です。個々の資産のリスク(分散)は2026-03-21-spreadsheet-var-function“>VAR関数で求められます。

STDEVP関数と組み合わせて相関係数を手動計算する

COVAR関数の結果を使って、相関係数を自分で計算することもできます。結果が2026-03-21-spreadsheet-correl-function“>CORREL関数と一致するか確かめてみましょう。

=COVAR(C2:C7, B2:B7) / (STDEVP(C2:C7) * STDEVP(B2:B7))

この式は =CORREL(C2:C7, B2:B7) と同じ結果を返します。共分散・標準偏差・相関係数のつながりが実感できますよね。

よくあるエラーと対処法

#N/Aエラー

COVAR関数で最もよく見るエラーです。

原因対策
データ_yとデータ_xの行数が異なるセル範囲の行数を揃える

たとえば =COVAR(B2:B13, C2:C10) のように行数がずれていると発生します。データ範囲を確認してください。

#DIV/0!エラー

以下の原因が考えられます。

原因対策
数値データが1つもない数値データを2つ以上含む範囲を指定する
有効なデータペアがない文字列や空白だけでないか確認する

範囲内に数値が含まれていない場合、計算に使えるデータがゼロになるため発生します。

#VALUE!エラー

引数に文字列を直接入力すると発生します。

=COVAR("100", "200")   → #VALUE!エラー
=COVAR(A1:A5, B1:B5)   → 正常に計算される

セル範囲内に文字列がある場合は自動で無視されます。引数として直接文字列を渡した場合にのみ発生するエラーです。

TIP

期待した結果にならないときは、セル範囲に空白や文字列が混ざっていないか確認してください。COVAR関数は対応するペアが両方とも数値のデータだけを使います。

CORREL関数との違い・関連する統計関数

CORREL関数との使い分け

共分散と相関係数は密接に関連していますが、使いどころが異なります。

目的使う関数理由
関連の方向(正か負か)を確認したいCOVAR関数符号で方向がわかる
関連の強さを-1〜1で測りたい2026-03-21-spreadsheet-correl-function“>CORREL関数正規化されているため比較しやすい
異なるデータセット間で強さを比較したい2026-03-21-spreadsheet-correl-function“>CORREL関数スケールに依存しない
ポートフォリオのリスク計算に使いたいCOVAR関数分散計算の公式に共分散が必要

迷ったら、まず2026-03-21-spreadsheet-correl-function“>CORREL関数で相関の強さを確認するのがおすすめです。共分散が必要になるのは、ポートフォリオ分析など数学的な計算に値を使うケースが多いですよ。

関連する統計関数の一覧

関数説明COVAR関数との関係
2026-03-21-spreadsheet-correl-function“>CORREL関数相関係数を求める共分散を標準偏差で正規化した値
2026-03-26-spreadsheet-pearson-function“>PEARSON関数ピアソン相関係数を求めるCORREL関数と同じ結果を返す
2026-03-21-spreadsheet-var-function“>VAR関数標本分散を求める1つのデータセット内のばらつき。共分散は2つのデータ間の関連
2026-03-21-spreadsheet-stdev-function“>STDEV関数標本標準偏差を求める共分散を標準偏差で割ると相関係数になる
2026-03-18-spreadsheet-average-function“>AVERAGE関数平均値を求める共分散の計算で各データの平均が使われる

まとめ

COVAR関数は、2つのデータセットの共分散を返す関数です。

この記事のポイント

  • 構文は =COVAR(データ_y, データ_x) で、2つのデータ範囲を指定するだけ
  • 共分散の符号(正・負・ゼロ付近)で2つのデータの関連の方向がわかる
  • 値の大小はデータのスケールに依存するため、異なるデータ間の比較にはCORREL関数を使う
  • 相関係数 = 共分散 / (標準偏差 x 標準偏差) という関係がある
  • ポートフォリオのリスク分析など、数学的な計算で共分散の値が必要になる場面で活躍する

次のステップ:関連する統計関数

COVAR関数の使い方がわかったら、以下の関数もあわせて覚えてみてください。データ分析の幅が広がりますよ。

タイトルとURLをコピーしました