ボックス-コックス変換
ビルドアップ
に対するのボックス-コックス変換と言う。
は元々べき乗変換power transformationと呼ばれるが、ボックスとコックスによって紹介されたため、ボックス-コックス変換とも呼ばれる。ボックス-コックス変換の主な用途は、データを正規分布に近づけるかデータの分散を安定させることで、正規性を仮定する分析法や定常性を求める分析法を使用する前のデータの前処理に有益に使用できる。べき乗変換を行うためには、データがすべて正でなければならないという条件が必要だが、通常は単に何らかの値を加えてデータの最小値が正になるようにシフトする方法で解決する。この方法が適切でないか気に入らない場合は、実数全体に対して一般化されたイェオ-ジョンソン変換 Yeo-Johnson Transformationを検討することができる。
数式的にはなので、実際にはぐらいまでわかっていれば問題なく認識できる。またはにも依存しているため、持っているものは関数のファミリーだ。はに従って柔軟に形を変え、分析者は目的に合わせてを正しく決める必要がある。
特に注目すべきはであるだ。は最も頻繁に使用される変換で、もが線形変換であるため、が発見されることがわかる。ボックス-コックス変換によって好ましいルートとログがカバーされる事実は、理論的に興味深いと同時に実際には当然のことであるべきだ。
の場合はとなり、実質的に恒等変換となる。通常、データから値がほど落ちるのは、変換と呼ぶには足りない。与えられたデータに対して適切ながとわかった場合、これは「変換が不要だ」と解釈しても問題ない。
同じ感覚で時系列分析を考えると、ボックス-コックス変換のの信頼区間を求めることは、データの分散が一定かを仮説検定することと見なすことができる。の信頼区間にが含まれていれば、データを変換するかしないかの差はない。変換をする必要がないということは、すなわち分散が既に一定であることを意味する。
仮説検定
データが与えられているとする。
- : つまり、データは定常性を持つ。
- : つまり、データは定常性を持たない。
このような診断は分散に対してのみ発生することに注意する必要がある。平均については気にしないため、別のテストが必要である。
コード
実践
Rでは、TSA
パッケージのBoxCox.ar()
関数を通じて簡単に仮説検定ができる。
内蔵データUKgas
を読み込んでみよう。
UKgas
はイギリスでのガス消費量を四半期ごとに記録したデータで、見ての通り、年を追うごとに変動がより一層激しくなることが分かる。一方で、仮説検定結果は信頼区間にが含まれており、これによりボックス-コックス変換はロク変換となる。
実際にログを取ると、分散がかなり安定することが分かる。確認のためもう一度仮説検定を行うと、信頼区間にが含まれている。これは、信頼水準で、これ以上の変換は不要だと解釈できる。しかし、グラフで示されるように、完全に分散が安定したわけではなく、も信頼区間に含まれるため、もう一度変換を行う根拠として受け入れても妥当である。このような状況での選択は最終的に信頼水準に依存し、信頼水準がであれば、分析者が選ぶことにかかっている。
全コード
UKgas
win.graph(3.5,3.5); plot(UKgas,main='UKgas')
win.graph(3.5,3.5); BoxCox.ar(UKgas)
win.graph(3.5,3.5); plot(log(UKgas),main='log(UKgas)')
win.graph(3.5,3.5); BoxCox.ar(log(UKgas))