Función de correlación NumPy

Vaibhhav Khetarpal 10 octubre 2023
  1. Correlación en NumPy
  2. Utilice la función np.corrcoef() para implementar la correlación en Python
  3. Use la correlación con la biblioteca Matplotlib para hacer gráficos de correlación
Función de correlación NumPy

Este tutorial demuestra la función de correlación np.corrcoef() de la biblioteca NumPy en Python.

Correlación en NumPy

El coeficiente de correlación es un valor numerado que indica la relación entre las características dadas del conjunto de datos.

La correlación puede ser positiva, lo que significa que tienen una relación directa, y un aumento en una característica conduciría a otra. También es posible una correlación negativa, lo que sugiere que ambas características tienen una relación inversa entre sí, lo que significa que un aumento en una característica provocaría una caída en la otra.

Las siguientes son varias correlaciones.

  • Correlación de Pearson
  • Correlación de Kendall
  • Correlación de Spearman

Sin embargo, la función de biblioteca NumPy np.corrcoef() solo se enfoca y calcula el valor de correlación de Pearson. Las otras correlaciones se pueden encontrar usando funciones directas proporcionadas por la biblioteca SciPy.

Este tutorial se centra únicamente en la función np.coefcorr() y su implementación.

Utilice la función np.corrcoef() para implementar la correlación en Python

La función np.corrcoef() de la biblioteca NumPy se utiliza para obtener una matriz de los coeficientes de correlación de Pearson entre dos matrices cualesquiera, siempre que ambas matrices tengan la misma forma. Esta función generalmente devuelve una matriz bidimensional, que representa los coeficientes de correlación.

Importe la biblioteca NumPy al código de Python para implementar esta función sin enfrentar ningún error.

Código de ejemplo:

import numpy as np

a = np.arange(20, 30)
b = np.array([8, 12, 29, 33, 60, 48, 21, 44, 78, 96])
x = np.corrcoef(a, b)
print(x)

Producción :

[[1.          0.82449488]
 [0.82449488  1.        ]]

La diagonal principal de la matriz de salida siempre tiene todos los valores como uno. En nuestro caso, el valor del elemento superior izquierdo es uno, ya que devuelve el coeficiente de correlación de x con x, y el elemento inferior derecho devuelve el coeficiente de correlación de y con y.

Los valores principales que deben considerarse de la matriz de salida dada son los otros dos valores. Este valor resulta aproximado 0.82 para nuestro caso. Además, ambos elementos siempre tienen los mismos valores.

Use la correlación con la biblioteca Matplotlib para hacer gráficos de correlación

La biblioteca NumPy también se puede utilizar junto con la biblioteca Matplotlib, lo que permite al usuario tener gráficos de correlación como salida. El siguiente código usa la función de correlación corrcoef() con la biblioteca Matplotlib para hacer gráficos de correlación.

Código de ejemplo:

import matplotlib.pyplot as plt
import matplotlib
import numpy as np

x = np.arange(20, 30)
y = np.array([8, 12, 29, 33, 60, 48, 21, 44, 78, 96])
print(np.corrcoef(x, y))

# %matplotlib inline
matplotlib.style.use("ggplot")
plt.scatter(x, y)
plt.show()

Producción:

usar la correlación con la biblioteca matplotlib

El gráfico anterior dicta una correlación positiva ya que el gráfico parece tener una trayectoria ascendente general. Este tipo de gráfico funciona aún mejor para una mayor cantidad de elementos en las matrices dadas.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Artículo relacionado - Python NumPy