回帰分析

回帰分析とは、ある結果の数値を、それに影響しそうな要因から説明・予測するための統計手法です。説明したい数値を目的変数、説明に使う要因を説明変数と呼び、両者の関係を一本の式であらわす。

回帰分析は「気温が 1 度上がると来店数は平均何人増えるか」を直線の傾きで表す

あるカフェで、日ごとの気温と来店数を並べたとする。暑い日ほど客は増える気がするが、どのくらい増えるかは眺めるだけではわからない。

そこで横軸に気温、縦軸に来店数を取って点を打ち、その散らばりに一番なじむ直線を引く。これが、説明変数を 1 つだけ使う単回帰だ。直線の傾きが、気温が 1 度上がるごとに来店数が平均何人動くかを表す。傾きが 8 なら「1 度でおよそ 8 人」。式にできれば、まだ観測していない気温の日の来店数も見積もれる。

説明変数を増やすと、係数は「他をそろえたときの、その要因だけの効き」に変わる

来店数を動かすのは、気温だけではない。曜日も、天気も効くはずだ。説明変数を 2 つ以上に増やした回帰を重回帰と呼ぶ。

ここで係数の読み方が一段変わる。重回帰の各係数は、他の説明変数を同じにそろえたまま、その要因だけを動かしたときの効きを表す。曜日と天気を一定とすれば、気温が 1 度上がるごとに来店数は平均何人増えるか——そう読む。

回帰分析を選ぶのは、数値の結果を複数の要因で説明・予測したいとき

回帰分析が向くのは、目的変数が数値で、それを動かしていそうな要因に見当がついている場面だ。売上や解約率のような結果の大きさを複数の要因で説明したいとき、回帰は要因ごとの効きを一つの表に並べてくれる。

単回帰と重回帰の選び分けは、問いの形で決まる。1 つの要因と結果の関係にまず当たりをつけたいなら単回帰、複数の要因の効きを分けて見たいなら重回帰だ。一方、多くの設問を少数の軸に要約したい、似た回答者を分けたいなら、回帰ではなく因子分析主成分分析クラスター分析の出番になる。全体像は多変量解析にまとめた。

係数は因果の証明ではなく、データの外にも延ばせない

回帰分析の危うさは、出てきた係数を強く読みすぎるところに集まっている。

第一に、係数が大きくても、その要因が結果を引き起こした証拠にはならない。回帰は相関を複数の変数に広げた手法であって、因果を示す仕組みではない。気温と来店数の裏で、季節という第三の要因が両方を押し上げているのかもしれない(交絡)。向きが逆で、結果のほうが要因を動かすこともある——売上が伸びたから広告費を増やした、というように。

第二に、データの外へ延ばした予測は当てにならない。手元のデータが気温 5 度から 30 度の範囲なら、直線が使えるのはその中までだ。同じ直線を猛暑日の 38 度まで延ばして「38 度で最多の来店」と読むのは危うい。暑すぎれば客足はむしろ落ち、関係は直線でなくなる。

第三に、説明変数どうしが強く相関していると、係数がぐらつく。気温と湿度のように連動する要因を一緒に入れると、どちらがどれだけ効いたのかを式が分離できず、係数の大きさや符号が不安定になる(多重共線性)。

回帰が返す係数には、「何をそろえたか」という但し書きが付く

同じ気温の係数でも、式に何を一緒に入れたかで値は動く。曜日を説明変数に加えれば下がり、外せば上がることが実際に起きる。回帰が返す数字は、いつも条件つきの値だ。「これらの要因をそろえたうえでの効き」という前提が、後ろに付いている。

だから、回帰の表を受け取ったら、係数の大きさの前に一つ確かめたい。この数字は、何をそろえた上での話なのか。

回帰分析は、ぼんやりした「効いている気がする」を、一本の式と一つの数字に翻訳してくれる。けれど、その数字をどこまで信じるかは式の精度ではなく、条件をどれだけ添えて読めるかで決まる。

このページの著者 こんぺい

大手事業会社で商品企画に携わり、スタートアップではプロダクトマネージャーとして会社を立ち上げ、調査会社では立ち上げからリサーチオペレーションを築いてきました。事業をつくる現場でいつも大事だと感じるのは、作り手と使い手の想いが重なる部分をどう大きくするか、そして、いいものを届け続けるお金のめぐりをどうつくるか。その重なりを広げる力が、リサーチにはある。そう信じて、このメディアをつくっています。