Как рассчитать точечную Бисериальную корреляцию в Python

Бисериальная корреляция используется для измерения связи между двоичной переменной x и непрерывной переменной y.

Аналогично Коэффициент корреляции Пирсона, точечный бисериальный коэффициент корреляции принимает значение от -1 до 1, где:

  • -1 указывает на совершенно отрицательную корреляцию между двумя переменными
  • 0 указывает на отсутствие корреляции между двумя переменными\n
  • 1 указывает на то, что положительная корреляция между двумя переменными

В этом учебном пособии объясняется, как вычислить точечно-бисериальную корреляцию между двумя переменными в Python.

Пример: Точечно-Бисериальная корреляция в Python

Предположим, у нас есть двоичная переменная x и непрерывная переменная, y:

x = [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0]
y = [12, 14, 17, 17, 11, 22, 23, 11, 19, 8, 12]

Можно использовать pointbiserialr() из библиотеки scipy.stats для вычисления точечно-бисериальной корреляции между двумя переменными.

Обратите внимание, что эта функция возвращает коэффициент корреляции вместе с соответствующим значением p:

import scipy.stats as stats

#вычислить точечно-бисериальную корреляцию
stats.pointbiserialr(x, y)

PointbiserialrResult(correlation=0.21816, pvalue=0.51928)

Поскольку коэффициент корреляции положительный, это означает, что когда переменная x принимает значение 1, переменная y имеет тенденцию принимать более высокие значения по сравнению с тем, когда переменная x принимает значение 0.

Поскольку p-значение этой корреляции не менее 0,05, эта корреляция не является статистически значимой.

Вы можете найти точную информацию о том, как рассчитывается эта корреляция, в scipy.stats документация.