Big-data-analytics-statistical-methods
ビッグデータ分析-統計的手法
データを分析するとき、統計的アプローチをとることができます。 基本的な分析を実行するために必要な基本的なツールは-
- 相関分析
- 分散分析
- 仮説検定
大規模なデータセットを使用する場合、これらの方法は相関分析を除いて計算集約的ではないため、問題はありません。 この場合、サンプルを取得することは常に可能であり、結果は堅牢である必要があります。
相関分析
相関分析は、数値変数間の線形関係を見つけようとします。 これはさまざまな状況で使用できます。 一般的な用途の1つは、探索的データ分析です。本のセクション16.0.2には、このアプローチの基本的な例があります。 まず、前述の例で使用される相関メトリックは、*ピアソン係数*に基づいています。 ただし、異常値の影響を受けない相関の別の興味深いメトリックがあります。 このメトリックは、スピアマン相関と呼ばれます。
- スピアマン相関*メトリックは、ピアソン法よりも外れ値の存在に対してロバストであり、データが正規分布していない場合の数値変数間の線形関係の推定値を向上させます。
次の図のヒストグラムから、両方のメトリックの相関関係の違いを予測できます。 この場合、変数は明らかに正規分布していないため、スピアマン相関は数値変数間の線形関係のより良い推定値です。
Rの相関を計算するには、このコードセクションがある bda/part2/statistical_methods/correlation/correlation.R ファイルを開きます。
カイ二乗検定
カイ2乗検定では、2つの確率変数が独立しているかどうかをテストできます。 これは、各変数の確率分布が他の変数に影響を与えないことを意味します。 Rでテストを評価するには、最初に分割表を作成し、次にテーブルを chisq.test R 関数に渡す必要があります。
たとえば、変数間に関連があるかどうかを確認しましょう:ダイヤモンドデータセットのカットと色。 テストは次のように正式に定義されています-
- H0:可変カットとダイヤモンドは独立しています
- H1:可変カットとダイヤモンドは独立していません
名前によってこれら2つの変数間に関係があると仮定しますが、テストはこの結果がどれほど重要であるかを示す客観的な「ルール」を与えることができます。
次のコードスニペットでは、テストのp値が2.2e-16であることがわかりました。これは実際的にはほぼゼロです。 次に、モンテカルロシミュレーション*を実行してテストを実行した後、p値は0.0004998であり、しきい値0.05よりもかなり低いことがわかりました。 この結果は、帰無仮説(H0)を棄却することを意味するため、変数 *cut と color は独立していないと考えられます。
T検定
t検定は、 t.test 関数を使用してRに実装されています。 t.testへの式インターフェースは、それを使用する最も簡単な方法です。アイデアは、数値変数はグループ変数によって説明されるということです。
例:* t.test(numeric_variable〜group_variable、data = data)。 前の例では、 *numeric_variable は price で、 group_variable は cut です。
統計的な観点から、数値変数の分布に2つのグループの違いがあるかどうかをテストしています。 正式には、仮説検定は帰無仮説(H0)と対立仮説(H1)で記述されます。
- H0:公正および理想グループ間で価格変数の分布に違いはありません
- H1公正なグループと理想的なグループの間で価格変数の分布に違いがある
以下は、次のコードでRに実装することができます-
p値が0.05未満かどうかを確認することで、テスト結果を分析できます。 この場合、対立仮説を維持します。 これは、カットファクターの2つのレベル間で価格の違いが見つかったことを意味します。 レベルの名前では、この結果を期待していましたが、Failグループの平均価格がIdealグループの平均価格よりも高いとは予想していませんでした。 これは、各因子の平均を比較することで確認できます。
分散分析
分散分析(ANOVA)は、各グループの平均と分散を比較することにより、グループ分布間の差異を分析するために使用される統計モデルです。モデルはRonald Fisherによって開発されました。 ANOVAは、いくつかのグループの平均が等しいかどうかの統計的検定を提供するため、t検定を3つ以上のグループに一般化します。
ANOVAは、複数の2サンプルt検定を実行すると統計タイプIエラーが発生する可能性が高くなるため、3つ以上のグループの統計的有意性を比較するのに役立ちます。
数学的な説明を提供するという点で、テストを理解するには以下が必要です。
x〜ij〜= x (x〜i〜-x)(x〜ij〜-x)
これは、次のモデルにつながります-
x〜ij〜=μ+α〜i〜+ε〜ij〜
ここで、μは総平均、α〜i〜_はi番目のグループ平均です。 エラー項∈〜ij〜_は、正規分布からiidであると仮定されます。 テストの帰無仮説は次のとおりです-
α〜1〜=α〜2〜=…=α〜k〜
検定統計量の計算に関しては、2つの値を計算する必要があります-
- グループ間の差の平方和-
SSD_B = \ sum _ \ {i} ^ \ {k} \ sum _ \ {j} ^ \ {n}(\ bar \ {x _ \ {\ bar \ {i}}}-\ bar \ {x}) ^ 2
SSD_W = \ sum _ \ {i} ^ \ {k} \ sum _ \ {j} ^ \ {n}(\ bar \ {x _ \ {\ bar \ {ij}}}-\ bar \ {x _ \ { \ bar \ {i}}})^ 2
ここで、SSD〜B〜はk-1の自由度を持ち、SSD〜W〜はN-kの自由度を持ちます。 次に、各メトリックの平均平方差を定義できます。
MS〜B〜= SSD〜B〜/(k-1)
MS〜w〜= SSD〜w〜/(N-k)
最後に、ANOVAの検定統計量は、上記の2つの量の比率として定義されます
F = MS〜B〜/MS〜w〜
_k-1_および_N-k_の自由度を持つF分布に従います。 帰無仮説が真の場合、Fは1に近い可能性があります。 そうでない場合、グループ間平均二乗MSBは大きくなる可能性が高く、その結果、F値が大きくなります。
基本的に、ANOVAは合計分散の2つのソースを調べ、どの部分がより寄与しているのかを確認します。 グループ平均を比較することを目的としていますが、これが分散分析と呼ばれる理由です。
統計の計算に関しては、実際にはRで行うのはかなり簡単です。 次の例は、その方法を示し、結果をプロットします。
コードは次の出力を生成します-
この例で取得するp値は0.05より大幅に小さいため、Rはこれを示すために記号「*」を返します。 これは、帰無仮説を棄却し、 cyl 変数の異なるグループ間でmpg平均の差を見つけることを意味します。