Вы можете использовать следующий синтаксис для вычисления корреляции между двумя столбцами в кадре данных pandas:
df['column1']. corr(df['column2'])
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1: расчет корреляции между двумя столбцами
В следующем коде показано, как вычислить корреляцию между столбцами в кадре данных pandas:
import pandas as pd
#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})
#view first five rows of DataFrame
df.head ()
points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
#calculate correlation between points and assists
df['points']. corr(df['assists'])
-0.359384
Коэффициент корреляции равен -0,359.Поскольку эта корреляция отрицательна, это говорит нам о том, что очки и передачи имеют отрицательную корреляцию.
Другими словами, по мере увеличения значений в столбце очков значения в столбце помощи имеют тенденцию к уменьшению.
Пример 2: расчет значимости корреляции
Чтобы определить, является ли коэффициент корреляции статистически значимым, вы можете использовать функцию pearsonr(x, y) из библиотеки SciPy .
Следующий код показывает, как использовать эту функцию на практике:
import pandas as pd
from scipy. stats import pearsonr
#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})
#calculate p-value of correlation coefficient between points and assists
pearsonr(df['points'], df['assists'])
(-0.359384, 0.38192)
Первое значение в выходных данных отображает коэффициент корреляции (-0,359384), а второе значение отображает p-значение (0,38192), связанное с этим коэффициентом корреляции.
Поскольку p-значение не меньше α = 0,05, можно сделать вывод, что корреляция между очками и передачами не является статистически значимой.
Дополнительные ресурсы
Как рассчитать ранговую корреляцию Спирмена в Python
Как рассчитать частичную корреляцию в Python
Как рассчитать взаимную корреляцию в Python