2021/04/02

アドバンスド

正規性確率プロット

データの分布が正規性を視覚的に判断する手段の1つとして、正規性確率プロット(Q-Qプロット)があります。このコンテンツでは、正規性確率プロット(Q-Qプロット)の作成方法について説明していきます。
なお、本コンテンツで利用したバージョンはSpotfire10.10です。ご利用環境によって、一部画面構成が異なりますので、ご了承ください。

はじめに

データに正規性があるかを確認することは非常に重要です。多くの伝統的な統計分析手法は、データが正規分布であることを仮定していることが多いからです。正規分布からの偏差が大きい場合には、モデルの前提が大きく崩れ、正確な結果を得られないことが多いです。

以上のことから、計算カラムを使った正規性の確認方法を説明します。

サンプルデータ

まず、TERRを利用して、サンプルデータを作成します。TERRのデータ関数を作成して、正規分布の乱数を100件生成します。
データ関数に関する手順についてはこちらの記事より、手順をご確認ください。

データ関数に下記コードを記述し、データ関数を実行します。出力としてデータテーブルxをSpotfire側で生成します。

x <- rnorm(100)

次のようなデータテーブルxが作成されます。(※乱数を生成しているため、テーブル内の各値は一致しません)

正規確率プロットの作成

正規確率プロットは、X軸に観測値、Y軸に期待値をプロットした散布図です。そのため、期待値を計算していきます。期待値を算出するには、

  • 各観測データの大きさのランク(順位)
  • 各観測データのp値

の2点を事前に計算する必要があります。まずは計算カラムを利用して、これらを作成していきます。

rankの算出

Spotfire画面左下のデータキャンパス画面より、データテーブルxに対して計算カラムを追加します。画面真ん中の⊕ボタンより、変換の追加 >> 計算カラムの追加 >> 挿入と進んでください。

次のように設定し、OKを選択してください。

  • 式: Rank([x],"desc")
  • カラム名:rank

これで、rankの計算は完了です。

p値の算出

続けてp値を算出します。先程と同様の手順で計算カラムを追加します。次のように設定をし、OKをクリックします。

  • 式: ([rank] - 0.5) / Count([x])
  • カラム名:p

これでp値の計算は完了です。

期待値の計算

期待値の計算も、同様に計算カラムを利用します。次のように設定をし、OKをクリックします。

  • 式: NormInv([p], Avg([x]), StdDev([x]))
  • カラム名:期待値

これで、期待値の算出が完了しました。データテーブルxを確認し、次のようにカラムが追加されていることを確認してください。

正規確率プロットの散布図作成

作成した計算カラムを利用し、正規確率プロット、いわゆるQ-Qプロットを作成します。X軸を期待値、Y軸を観測値xとする散布図を作成してください。

これに、回帰線を追加します。散布図の右上の歯車マーク「プロパティ」より「線およびカーブ」を選択します。「表示される線およびカーブ」>> 追加 ボタンより、回帰直線を追加してください。

これで、Q-Qプロットの完成です。

【アドバンスド】記事一覧に戻る
全記事一覧に戻る