Spec-Zone.ru › NumPy 2.0

numpy.corrcoef

numpy.corrcoef(x, y=None, rowvar=True, bias=<no value>, ddof=<no value>, *, dtype=None)[source]

Возвращает коэффициенты корреляции Пирсона.

Обратитесь к документации для cov для получения более подробной информации. Связь между матрицей коэффициентов корреляции, R, и матрицей ковариации, C, составляет

\[R_{ij} = \frac{ C_{ij} } { \sqrt{ C_{ii} C_{jj} } }\]

Значения R находятся в диапазоне от -1 до 1 включительно.

Параметры:
xarray_like

Одномерный или двумерный массив, содержащий несколько переменных и наблюдений. Каждая строка x представляет переменную, а каждый столбец — одно наблюдение за всеми этими переменными. Также см. rowvar ниже.

yarray_like, необязательно

Дополнительный набор переменных и наблюдений. y имеет такую же форму, как x.

rowvarbool, необязательно

Если rowvar равно True (по умолчанию), то каждая строка представляет переменную, а наблюдения находятся в столбцах. В противном случае связь транспонирована: каждый столбец представляет переменную, а строки содержат наблюдения.

bias_NoValue, необязательно

Не оказывает влияния, не используйте.

Устарело начиная с версии 1.10.0.

ddof_NoValue, необязательно

Не оказывает влияния, не используйте.

Устарело начиная с версии 1.10.0.

dtypeтип данных, необязательно

Тип данных результата. По умолчанию возвращаемый тип данных будет иметь по крайней мере numpy.float64 точность.

Добавлен в версии 1.20.

Возвращает:
Rndarray

Матрица коэффициентов корреляции переменных.

См. также

cov

Матрица ковариации

Примечания

Из-за округления с плавающей точкой результирующий массив может не быть эрмитовым, диагональные элементы могут не быть равны 1, а элементы могут не удовлетворять неравенству abs(a) <= 1. Вещественная и мнимая части обрезаются до интервала [-1, 1] в попытке улучшить ситуацию, но это не сильно помогает в комплексном случае.

Эта функция принимает, но игнорирует аргументы bias и ddof. Это делается для обратной совместимости с предыдущими версиями этой функции. Эти аргументы не влияли на возвращаемые значения функции и могут быть безопасно проигнорированы в этой и предыдущих версиях numpy.

Примеры

В этом примере мы генерируем два случайных массива, xarr и yarr, и вычисляем коэффициенты корреляции Пирсона по строкам и столбцам, R. Поскольку rowvar по умолчанию равно True, мы сначала находим коэффициенты корреляции Пирсона по строкам между переменными xarr.

>>> import numpy as np
>>> rng = np.random.default_rng(seed=42)
>>> xarr = rng.random((3, 3))
>>> xarr
array([[0.77395605, 0.43887844, 0.85859792],
       [0.69736803, 0.09417735, 0.97562235],
       [0.7611397 , 0.78606431, 0.12811363]])
>>> R1 = np.corrcoef(xarr)
>>> R1
array([[ 1.        ,  0.99256089, -0.68080986],
       [ 0.99256089,  1.        , -0.76492172],
       [-0.68080986, -0.76492172,  1.        ]])

Если мы добавим другой набор переменных и наблюдений yarr, мы можем вычислить коэффициенты корреляции Пирсона по строкам между переменными в xarr и yarr.

>>> yarr = rng.random((3, 3))
>>> yarr
array([[0.45038594, 0.37079802, 0.92676499],
       [0.64386512, 0.82276161, 0.4434142 ],
       [0.22723872, 0.55458479, 0.06381726]])
>>> R2 = np.corrcoef(xarr, yarr)
>>> R2
array([[ 1.        ,  0.99256089, -0.68080986,  0.75008178, -0.934284  ,
        -0.99004057],
       [ 0.99256089,  1.        , -0.76492172,  0.82502011, -0.97074098,
        -0.99981569],
       [-0.68080986, -0.76492172,  1.        , -0.99507202,  0.89721355,
         0.77714685],
       [ 0.75008178,  0.82502011, -0.99507202,  1.        , -0.93657855,
        -0.83571711],
       [-0.934284  , -0.97074098,  0.89721355, -0.93657855,  1.        ,
         0.97517215],
       [-0.99004057, -0.99981569,  0.77714685, -0.83571711,  0.97517215,
         1.        ]])

Наконец, если мы используем опцию rowvar=False, столбцы теперь обрабатываются как переменные, и мы получим коэффициенты корреляции Пирсона по столбцам между переменными в xarr и yarr.

>>> R3 = np.corrcoef(xarr, yarr, rowvar=False)
>>> R3
array([[ 1.        ,  0.77598074, -0.47458546, -0.75078643, -0.9665554 ,
         0.22423734],
       [ 0.77598074,  1.        , -0.92346708, -0.99923895, -0.58826587,
        -0.44069024],
       [-0.47458546, -0.92346708,  1.        ,  0.93773029,  0.23297648,
         0.75137473],
       [-0.75078643, -0.99923895,  0.93773029,  1.        ,  0.55627469,
         0.47536961],
       [-0.9665554 , -0.58826587,  0.23297648,  0.55627469,  1.        ,
        -0.46666491],
       [ 0.22423734, -0.44069024,  0.75137473,  0.47536961, -0.46666491,
         1.        ]])

© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.corrcoef.html

Spec-Zone.ru

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