最近、体重を少しずつ減らしていくため、朝は社バス、帰りは徒歩というのが通勤の習慣になってきました。歩いて帰ると一時間ぐらい掛かるのですが、道すがら今日あった出来事をあれこれ振り返っています。
そして今日は、データの前処理について釈然としないことがあって、それを考えながら歩いていました。結論はすぐに出たのですが、週末ということもあって、帰ってからあらためて確認しました。
釈然としなかったことというのは、例えば下記のようなデータを解析する際、
平均値がばらつきに比べて大きすぎるので、前処理として、下記のように定数(この例の場合は 95)で切るというものです。
※ 最近は Python ばかり使っていて R を使わなくなってしまったので、今回は敢えて R でプロットしています。というより R の方がこういうのは簡単にできます。
主成分分析を利用して解析をすることが多いので、これを聞いて、それでは分散の値は変わらない(= 解析精度は良くはならない)と思ったのですが、咄嗟にうまい言葉が出てきませんでした。いや、もしかすると、なにか重要な情報を聞き逃していて、こんな単純な話ではなかったのかもしれません。😅
とにかく、データに定数を足したり引いたりしても分散は不変であることを確認したくなりました。
ちょうど、ブログで数式表記をする手段を探しており、参考サイト [1] を参考に、本ブログでも MathJax を利用して数式表現をできるようにしたので、練習がてら利用してみました。
n 個のデータ x の平均値 μ は以下の式で算出できます。
\[ \mu = \frac{1}{n}\sum_{i=1}^n x_i \]また分散 σ2 は、
\[ \sigma^2 = \frac{1}{n}\sum_{i=1}^n (x_i - \mu)^2 \]となります。
次に、定数 d でデータ x を一律にカットした場合です。
先ほどと同じように平均値 μ1 を計算すると、
\[ \mu_1 = \frac{1}{n}\sum_{i=1}^n (x_i - d) = \frac{1}{n}\sum_{i=1}^n x_i - d = \mu - d \]となって、平均値 μ1 も定数 d だけ減じた量になります。
このとき。分散 σ12 は、
\[ \sigma_1^2 = \frac{1}{n}\sum_{i=1}^n (x_i -d - \mu_1)^2 = \frac{1}{n}\sum_{i=1}^n (x_i -d - \mu + d)^2 = \frac{1}{n}\sum_{i=1}^n (x_i - \mu)^2 = \sigma^2 \]と算出されます。
このように、データに定数を引こうが足そうが分散は不変です。つまり、例えば主成分分析のように分散を利用するデータ解析では、定数を引くことは有効なデータの前処理にはなっていないということになります。
久しぶりに LaTeX で記述した気分です。いや、数式の記述方法は同じですね。MathJax を利用した数式表記を本ブログで活用していきます。
【追記】スマホで見たら、数式表記が反映されていませんでした。😭
参考サイト
にほんブログ村
#オープンソース
0 件のコメント:
コメントを投稿