Метод cov
Метод cov применяется к DataFrame
и возвращает таблицу ковариаций для всех пар числовых столбцов.
По умолчанию вычисляется выборочная ковариация (с делителем n-1).
Метод автоматически исключает нечисловые столбцы и пропущенные значения.
Синтаксис
df.cov([numeric_only])
Необязательный параметр numeric_only принимает логическое значение.
Если True, то в расчёт включаются только числовые столбцы.
В новых версиях Pandas по умолчанию numeric_only равен True.
Пример
Рассчитаем ковариацию для двух числовых столбцов таблицы:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50]
})
res = df.cov()
print(res)
Результат выполнения кода:
a b
a 2.5 25.0
b 25.0 250.0
Пример
Ковариация между столбцами a и b равна 25.0,
что указывает на положительную связь между ними.
На диагонали расположены дисперсии каждого столбца:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': [10, 20, 30, 40, 50],
'c': [5, 4, 3, 2, 1]
})
res = df.cov()
print(res)
Результат выполнения кода:
a b c
a 2.5 25.0 -2.5
b 25.0 250.0 -25.0
c -2.5 -25.0 2.5
Пример
Параметр numeric_only позволяет явно указать,
какие столбцы учитывать при расчёте:
import pandas as pd
df = pd.DataFrame({
'a': [1, 2, 3, 4, 5],
'b': ['x', 'y', 'z', 'w', 'v'],
'c': [10, 20, 30, 40, 50]
})
res = df.cov(numeric_only=True)
print(res)
Результат выполнения кода:
a c
a 2.5 25.0
c 25.0 250.0