メインコンテンツへスキップ
メインコンテンツへスキップ

cramersV

Cramer's V(Cramer's phi と呼ばれることもあります)は、テーブルの 2 つのカラム間の連関の強さを表す指標です。cramersV 関数の結果は 0(変数間に連関がないことに対応)から 1 の範囲を取り、一方の値が他方によって完全に決定される場合にのみ 1 になります。これは、2 つの変数間の連関を、それらが取り得る最大限の変動量に対する割合として解釈できます。

注記

バイアス補正済みの Cramer's V については、cramersVBiasCorrected を参照してください。

構文

cramersV(column1, column2)

パラメータ

  • column1: 比較対象となる 1 つ目のカラム。
  • column2: 比較対象となる 2 つ目のカラム。

返される値

  • 0(カラムの値同士に関連性がないことを表す)から 1(完全な関連性があることを表す)までの値。

型: 常に Float64

次の 2 つのカラムは互いに関連性がないため、cramersV の結果は 0 になります:

クエリ:

SELECT
    cramersV(a, b)
FROM
    (
        SELECT
            number % 3 AS a,
            number % 5 AS b
        FROM
            numbers(150)
    );

結果:

┌─cramersV(a, b)─┐
│              0 │
└────────────────┘

以下の2つのカラムは密接に関連しているため、cramersV の値は高くなります。

SELECT
    cramersV(a, b)
FROM
    (
        SELECT
            number % 10 AS a,
            if(number % 12 = 0, (number + 1) % 5, number % 5) AS b
        FROM
            numbers(150)
    );

結果:

┌─────cramersV(a, b)─┐
│ 0.9066801892162646 │
└────────────────────┘