Menu
CoddyTech

Correlación

Parte de la sección Estadística para ML del Journey de Machine Learning de Coddy. Lección 30 de 64.

Una característica que se mueve con el objetivo ayuda a un modelo a predecirlo. La correlación r mide qué tan cerca siguen dos columnas una línea recta, de -1 a 1:

Seis pequeños diagramas de dispersión etiquetados con su r: -0.9 y -0.5 descienden, 0.0 es una nube sin forma, 0.5 y 0.9 ascienden, y 1.0 es una línea ascendente perfecta

Seis semanas de anuncios y ventas de una tienda: np.corrcoef devuelve una tabla de 2 por 2, cada arreglo frente a cada uno, con r en [0, 1]. El .corr de una columna lo devuelve directamente:

ads = np.array([100, 200, 150, 300, 250, 50])
sales = np.array([430, 520, 560, 760, 610, 410])
print(np.round(np.corrcoef(ads, sales), 2))
shop = pd.DataFrame({"ads": ads, "sales": sales})
print(np.round(shop["ads"].corr(shop["sales"]), 2))

Esto imprime:

[[1.   0.94]
 [0.94 1.  ]]
0.94

Con 0,94, las semanas con más anuncios vendieron claramente más.

challenge icon

Desafío

Intermedio

Un gimnasio registró a 20 miembros durante tres meses en gym.csv, con las columnas visits, classes, minutes_per_visit, age y weight_change_kg. El programa lee dos nombres de columnas.

  1. Imprime los dos nombres y su r, redondeado a 2 decimales, como se muestra a continuación.
  2. Imprime Direction: positive cuando r sea superior a 0.3, negative cuando sea inferior a -0.3 y, en caso contrario, none.

Para los laps y los minutes de un club de natación:

laps and minutes: r = 0.95
Direction: positive

Pruébalo tú mismo

import numpy as np
import pandas as pd

gym = pd.read_csv("gym.csv")
first = input()
second = input()

# Escribe tu código a continuación
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Estadística para ML

Practica por tu cuenta: Compilador de Python online