Перейти к основному содержанию
Перейти к основному содержанию

cramersV

Мера V Крамера (иногда также называемая фи Крамера) — это мера взаимосвязи между двумя столбцами в таблице. Результат функции cramersV лежит в диапазоне от 0 (что соответствует отсутствию связи между переменными) до 1 и может достигать 1 только тогда, когда каждое значение полностью определяется другим. Её можно рассматривать как степень взаимосвязи между двумя переменными, выраженную в процентах от их максимально возможной вариации.

Примечание

См. скорректированный с учётом смещения вариант меры V Крамера: cramersVBiasCorrected

Синтаксис

cramersV(column1, column2)

Параметры

  • column1: первый столбец для сравнения.
  • column2: второй столбец для сравнения.

Возвращаемое значение

  • значение от 0 (соответствует отсутствию зависимости между значениями столбцов) до 1 (полная зависимость).

Тип: всегда Float64.

Пример

Следующие два столбца, сравниваемые ниже, не зависят друг от друга, поэтому результат cramersV равен 0:

Запрос:

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

Результат:

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

Следующие два столбца тесно взаимосвязаны, поэтому значение 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 │
└────────────────────┘