pandas.DataFrame.corr#
- DataFrame.corr(метод='pearson', min_periods=1, numeric_only=False)[источник]#
Вычисляет попарную корреляцию столбцов, исключая значения NA/null.
- Параметры:
- метод{‘pearson’, ‘kendall’, ‘spearman’} или вызываемый объект
Метод корреляции:
pearson : стандартный коэффициент корреляции
kendall : коэффициент корреляции Кендалла
spearman : корреляция рангов Спирмена
- вызываемый объект: вызываемый объект с входными двумя одномерными массивами ndarray
и возвращает float. Обратите внимание, что возвращаемая матрица из corr будет иметь 1 на диагонали и будет симметричной независимо от поведения вызываемого объекта.
- min_periodsint, необязательный
Минимальное количество наблюдений, требуемое для каждой пары столбцов для получения валидного результата. В настоящее время доступно только для корреляции Пирсона и Спирмена.
- numeric_onlybool, по умолчанию False
Включите только float, int или логический data.
Добавлено в версии 1.5.0.
Изменено в версии 2.0.0: Значение по умолчанию для
numeric_onlyтеперьFalse.
- Возвращает:
- DataFrame
Корреляционная матрица.
Смотрите также
DataFrame.corrwithВычислить попарную корреляцию с другим DataFrame или Series.
Series.corrВычислить корреляцию между двумя Series.
Примечания
Корреляции Пирсона, Кендалла и Спирмена в настоящее время вычисляются с использованием попарно полных наблюдений.
Примеры
>>> def histogram_intersection(a, b): ... v = np.minimum(a, b).sum().round(decimals=1) ... return v >>> df = pd.DataFrame([(.2, .3), (.0, .6), (.6, .0), (.2, .1)], ... columns=['dogs', 'cats']) >>> df.corr(method=histogram_intersection) dogs cats dogs 1.0 0.3 cats 0.3 1.0
>>> df = pd.DataFrame([(1, 1), (2, np.nan), (np.nan, 3), (4, 4)], ... columns=['dogs', 'cats']) >>> df.corr(min_periods=3) dogs cats dogs 1.0 NaN cats NaN 1.0