Spec-Zone.ru › pandas 2

pandas.core.groupby.SeriesGroupBy.corr

SeriesGroupBy.corr(other, method='pearson', min_periods=None)[source]

Вычисление корреляции с серией other, исключая пропущенные значения.

Два объекта Series не обязаны иметь одинаковую длину и будут выровнены внутри перед применением функции корреляции.

Параметры:
other:Series

Серия, с которой вычисляется корреляция.

method:{‘pearson’, ‘kendall’, ‘spearman’} или вызываемый объект

Метод, используемый для вычисления корреляции:

  • pearson : Стандартный коэффициент корреляции

  • kendall : Коэффициент корреляции Кендалла

  • spearman : Корреляция рангов Спирмена

  • вызываемый объект: Вызываемый объект с вводом двух одномерных массивов ndarray и возвращающим число с плавающей точкой.

Предупреждение

Обратите внимание, что возвращаемая матрица из corr будет иметь 1 по диагонали и будет симметричной независимо от поведения вызываемого объекта.

min_periods:int, необязательно

Минимальное количество наблюдений, необходимое для получения корректного результата.

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

Корреляция с other.

См. также

DataFrame.corr

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

DataFrame.corrwith

Вычислить парную корреляцию с другой таблицей DataFrame или серией.

Примечания

Корреляция Пирсона, Кендалла и Спирмена в настоящее время вычисляются с использованием парных полных наблюдений.

  • Коэффициент корреляции Пирсона

  • Коэффициент ранговой корреляции Кендалла

  • Коэффициент ранговой корреляции Спирмена

Автоматическое выравнивание данных: как и во всех операциях pandas, для этого метода выполняется автоматическое выравнивание данных. corr() автоматически учитываются значения с совпадающими индексами.

Примеры

>>> def histogram_intersection(a, b):
...     v = np.minimum(a, b).sum().round(decimals=1)
...     return v
>>> s1 = pd.Series([.2, .0, .6, .2])
>>> s2 = pd.Series([.3, .6, .0, .1])
>>> s1.corr(s2, method=histogram_intersection)
0.3

Pandas автоматически выравнивает значения с совпадающими индексами

>>> s1 = pd.Series([1, 2, 3], index=[0, 1, 2])
>>> s2 = pd.Series([1, 2, 3], index=[2, 1, 0])
>>> s1.corr(s2)
-1.0

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.2.2/reference/api/pandas.core.groupby.SeriesGroupBy.corr.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API