Estadística práctica para ciencia de datos con R y Python - Peter Bruce - E-Book

Estadística práctica para ciencia de datos con R y Python E-Book

Peter Bruce

0,0

Beschreibung

Los métodos estadísticos son una parte fundamental de la ciencia de datos, pero pocos científicos de datos tienen una formación avanzada en estadística. Los cursos y libros sobre estadística básica rara vez tratan el tema desde la perspectiva de la ciencia de datos. La segunda edición de este libro incluye ejemplos detallados de Python, ofrece una orientación práctica sobre la aplicación de los métodos estadísticos a la ciencia de datos, te indica cómo evitar su uso incorrecto y te aconseja sobre lo que es y lo que no es importante. Muchos recursos de la ciencia de datos incorporan métodos estadísticos, pero carecen de una perspectiva estadística más profunda. Si estás familiarizado con los lenguajes de programación R o Python y tienes algún conocimiento de estadística, este libro suple esas carencias de una forma práctica, accesible y clara. Con este libro aprenderás: Por qué el análisis exploratorio de datos es un paso preliminar clave en la ciencia de datos Cómo el muestreo aleatorio puede reducir el sesgo y ofrecer un conjunto de datos de mayor calidad, incluso con Big Data Cómo los principios del diseño experimental ofrecen respuestas definitivas a preguntas Cómo utilizar la regresión para estimar resultados y detectar anomalías Técnicas de clasificación esenciales para predecir a qué categorías pertenece un registro Métodos estadísticos de aprendizaje automático que "aprenden" a partir de los datos Métodos de aprendizaje no supervisados para extraer significado de datos sin etiquetar Peter Bruce es el fundador del Institute for Statistics Education en Statistics.com. Andrew Bruce es científico investigador jefe en Amazon y tiene más de 30 años de experiencia en estadística y ciencia de datos. Peter Gedeck es científico de datos senior en Collaborative Drug Discovery, desarrolla algoritmos de aprendizaje automático para pronosticar propiedades de posibles futuros fármacos.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 487

Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:

Android
iOS
Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



 

 

Segunda edición original publicada en inglés por O’Reilly con el título Practical Statistics for Data Scientists, ISBN 978-1-492-07294-2 © Peter Bruce, Andrew Bruce y Peter Gedeck, 2020. This translation is published and sold by permission of O’Reilly Media, Inc., which owns or controls all rights to publish and sell the same.

Título de la edición en español:

Estadística práctica para ciencia de datos con R y Python

Segunda edición en español, 2022

© 2022 MARCOMBO, S.L.

www.marcombo.com

Diseño de portada: Karen Montgomery

Ilustración: Rebecca Demarest

Traducción: Francisco Martínez Carreno

Corrección: Nuria Barroso

«Cualquier forma de reproducción, distribución, comunicación pública o transformación de esta obra solo puede ser realizada con la autorización de sus titulares, salvo excepción prevista por la ley. La presente publicación contiene la opinión del autor y tiene el objetivo de informar de forma precisa y concisa. La elaboración del contenido, aunque se ha trabajado de forma escrupulosa, no puede comportar una responsabilidad específica para el autor ni el editor de los posibles errores o imprecisiones que pudiera contener la presente obra.»

ISBN: 978-84-267-3454-9

Producción del ePub: booqlab

 

 

Nos gustaría dedicar este libro al recuerdo de nuestros padres, Victor G. Bruce y Nancy C. Bruce, que cultivaron la pasión por las matemáticas y la ciencia. También a nuestros primeros tutores John W. Tukey, Julian Simon y a nuestro amigo de toda la vida Geoff Watson, que nos animaron a seguir la carrera de estadística.

Peter Bruce y Andrew Bruce

 

Me gustaría dedicar este libro a Tim Clark y Christian Kramer, a los que agradezco profundamente su investigación científica y su amistad.

Peter Gedeck

Contenidos

Prefacio

1.   Análisis exploratorio de datos

Elementos de datos estructurados

Lecturas complementarias

Datos rectangulares

Marcos de datos e índices

Estructuras de datos no rectangulares

Lecturas complementarias

Estimación de la localización

Media

Estimación de medianas robustas

Ejemplo: estimaciones de localización de la población y tasas de homicidios

Lecturas complementarias

Estimación de la variabilidad

Desviación estándar y estimaciones relacionadas

Estimación basada en percentiles

Ejemplo: estimaciones de variabilidad de la población estatal

Lecturas complementarias

Exploración de la distribución de datos

Percentiles y diagramas de caja

Tablas de frecuencias e histogramas

Diagrama y estimación de la curva de densidad

Lecturas complementarias

Exploración de datos binarios y categóricos

Moda

Valor esperado

Probabilidad

Lecturas complementarias

Correlación

Diagramas de dispersión

Lecturas complementarias

Exploración de dos o más variables

Agrupación hexagonal y contornos (representación numérica frente a datos numéricos)

Dos variables categóricas

Datos categóricos y numéricos

Visualización de varias variables

Lecturas complementarias

Resumen

2.   Distribuciones de datos y muestreo

Muestreo aleatorio y sesgo de la muestra

Sesgo

Selección aleatoria

Tamaño frente a calidad: ¿cuándo importa el tamaño?

Media muestral frente a media poblacional

Lecturas complementarias

Sesgo de selección

Regresión a la media

Lecturas complementarias

Distribución muestral del estadístico

Teorema del límite central

Error estándar

Lecturas complementarias

Bootstrap

Remuestreo frente a bootstrapping

Lecturas complementarias

Intervalos de confianza

Lecturas complementarias

Distribución normal

Normal estándar y diagramas QQ

Distribuciones de cola larga

Lecturas complementarias

Distribución t de Student

Lecturas complementarias

Distribución binomial

Lecturas complementarias

Distribución chi cuadrado

Lecturas complementarias

Distribución F

Lecturas complementarias

La distribución de Poisson y distribuciones relacionadas

Distribución de Poisson

Distribución exponencial

Estimación de la tasa de fallos

Distribución de Weibull

Lecturas complementarias

Resumen

3. Experimentos estadísticos y pruebas significativas

Prueba A/B

¿Por qué tener un grupo de control?

¿Por qué solo A/B? ¿Por qué no C, D, …?

Lecturas complementarias

Pruebas de hipótesis

La hipótesis nula

Hipótesis alternativa

Pruebas de hipótesis unidireccionales o bidireccionales

Lecturas complementarias

Remuestreo

Prueba de permutación

Ejemplo: adherencia de la web

Pruebas de permutación exhaustiva y de bootstrap

Pruebas de permutación: el resultado final de la ciencia de datos

Lecturas complementarias

Significación estadística y valores p

Valor p

Alfa

Errores de tipo 1 y 2

Ciencia de datos y valores p

Lecturas complementarias

Pruebas t

Lecturas complementarias

Pruebas múltiples

Lecturas complementarias

Grados de libertad

Lecturas complementarias

ANOVA

Estadístico F

ANOVA bidireccional

Lecturas complementarias

Prueba de chi cuadrado

Prueba de chi cuadrado: enfoque de remuestreo

Prueba de chi cuadrado: teoría estadística

Prueba exacta de Fisher

Relevancia para la ciencia de datos

Lecturas complementarias

Algoritmo Multi-Arm Bandit

Lecturas complementarias

Potencia y tamaño de la muestra

Tamaño de la muestra

Lecturas complementarias

Resumen

4. Regresión y pronóstico

Regresión lineal simple

La ecuación de regresión

Valores ajustados y residuos

Mínimos cuadrados

Pronóstico frente a explicación (elaboración de perfiles)

Lecturas complementarias

Regresión lineal múltiple

Ejemplo: datos de las viviendas del condado de King

Evaluación del modelo

Validación cruzada

Selección del modelo y regresión escalonada

Regresión ponderada

Lecturas complementarias

Pronóstico mediante la regresión

Los peligros de la extrapolación

Intervalos de confianza y de pronóstico

Variables de tipo factor en la regresión

Representación de variables ficticias

Variables de tipo factor con muchos niveles

Variables de tipo factor ordenadas

Interpretación de la ecuación de regresión

Predictoras correlacionadas

Multicolinealidad

Variables de confusión

Interacciones y efectos principales

Diagnósticos de regresión

Valores atípicos

Valores influyentes

Heterocedasticidad, anormalidad y errores correlacionados

Diagramas de residuos parciales y falta de linealidad

Regresión polinomial y por spline

Polinomial

Splines

Modelos aditivos generalizados

Lecturas complementarias

Resumen

5.   Clasificación

Bayes ingenuo

Por qué la clasificación bayesiana exacta no es práctica

La solución ingenua

Variables predictoras numéricas

Lecturas complementarias

Análisis discriminante

Matriz de covarianza

Discriminante lineal de Fisher

Un ejemplo sencillo

Lecturas complementarias

Regresión logística

Función de respuesta logística y logit

Regresión logística y GLM

Modelos lineales generalizados

Valores pronosticados de regresión logística

Interpretación de los coeficientes y de la razón de oportunidades

Regresión lineal y logística: similitudes y diferencias

Evaluación del modelo

Lecturas complementarias

Evaluación de modelos de clasificación

Matriz de confusión

El problema de las clases raras

Precisión, exhaustividad y especificidad

Curva ROC

AUC

Sustentación

Lecturas complementarias

Estrategias para datos que no están equilibrados

Submuestreo

Sobremuestreo y aumento/disminución de la ponderación

Generación de datos

Clasificación basada en los costes

Exploración de pronósticos

Lecturas complementarias

Resumen

6.   Aprendizaje automático estadístico

K-vecinos más cercanos

Un pequeño ejemplo: pronóstico del incumplimiento de préstamos

Métricas de distancia

Codificador One-Hot

Estandarización (normalización, puntuación z)

Elección de K

KNN como motor de características

Modelos de árbol

Un ejemplo sencillo

Algoritmo de partición recursiva

Medición de la homogeneidad o la impureza

Detención del crecimiento del árbol

Pronóstico de un valor continuo

Cómo se utilizan los árboles

Lecturas complementarias

Métodos de bagging y bosque aleatorio

Bagging

Bosque aleatorio

Importancia de la variable

Hiperparámetros

Boosting

El algoritmo boosting

XGBoost

Regularización: evitación del sobreajuste

Hiperparámetros y validación cruzada

Resumen

7.   Aprendizaje no supervisado

Análisis de componentes principales

Un ejemplo sencillo

Cálculo de los componentes principales

Interpretación de componentes principales

Análisis de correspondencias

Lecturas complementarias

Agrupación K-means

Un ejemplo sencillo

Algoritmo K-means

Interpretación de los grupos

Selección del número de grupos

Agrupación jerárquica

Un ejemplo sencillo

El dendrograma

El algoritmo de aglomeración

Medidas de disimilitud

Agrupación basada en el modelo

Distribución normal multivariante

Mezclas de distribuciones normales

Selección del número de grupos

Lecturas complementarias

Variables categóricas y escalado

Escalado de variables

Variables dominantes

Datos categóricos y distancia de Gower

Problemas con la agrupación de datos mixtos

Resumen

Bibliografía

Prefacio

Este libro está dirigido a científicos de datos familiarizados de algún modo con los lenguajes de programación R y/o Python, y con una formación básica (quizás irregular o efímera) a la estadística. Dos de los autores de este libro llegamos al mundo de la ciencia de datos desde el mundo de la estadística y apreciamos en cierta medida la contribución que la estadística puede hacer al arte de la ciencia de datos. Al mismo tiempo, somos muy conscientes de las limitaciones de la enseñanza de la estadística tradicional: la estadística como disciplina tiene un siglo y medio de vida, y la mayoría de los libros de texto y cursos de estadística están cargados con el impulso y la inercia de un transatlántico. Todos los métodos de este libro tienen alguna conexión, histórica o metodológica, con la disciplina de la estadística. No se incluyen los métodos que evolucionaron principalmente a partir de la informática, como es el caso de las redes neuronales.

El libro tiene dos objetivos:

• Presentar, en forma digerible, navegable y de fácil referencia, conceptos clave de estadística que son relevantes para la ciencia de datos.

• Explicar qué conceptos son importantes y útiles desde la perspectiva de la ciencia de datos, cuáles lo son menos y por qué.

Convenciones que se utilizan en el libro

Términos clave

La ciencia de datos es la fusión de varias disciplinas, entre las que se incluyen la estadística, la informática, las tecnologías de la información y campos específicos de este ámbito. Como consecuencia, se pueden utilizar varios términos diferentes para referirse a un concepto dado. Los términos clave y sus sinónimos se destacarán a lo largo del libro en un recuadro como este.

Este elemento indica un consejo o una sugerencia.

Este elemento indica una nota general.

Este elemento indica una advertencia o precaución.

Uso de los ejemplos de código

En todos los casos, el libro proporciona ejemplos de código, en primer lugar en R y a continuación en Python. Para evitar repeticiones innecesarias, generalmente solo se muestran los resultados y gráficos que genera el código R. También omitimos el código necesario para cargar tanto los paquetes como los conjuntos de datos requeridos. Se puede acceder al código completo y los conjuntos de datos para su descarga en www.marcombo.info con el código DATOS22.

Este libro está aquí para ayudarte a hacer tu trabajo. En general, si en el libro se facilitan códigos de ejemplo, puedes usarlos en tus programas y documentación. No necesitas ponerte en contacto con nosotros para pedir permiso a menos que vayas a reproducir una parte importante del código. Por ejemplo, escribir un programa que use varios fragmentos de código del libro no requiere permiso. Vender o distribuir ejemplos de los libros de O’Reilly y de Marcombo requiere permiso. Responder a una pregunta proporcionando la referencia del libro y citar el código de un ejemplo no requiere permiso. La incorporación de una cantidad importante del código de los ejemplos del libro en la documentación de tu producto requiere permiso.

Generalmente no pedimos que se incluya una atribución, pero apreciamos que se haga. Una atribución contiene el título, autor, editor e ISBN. Por ejemplo: "Estadística práctica para ciencia de datos con R y Python de Peter Bruce, Andrew Bruce y Peter Gedeck (Marcombo y O’Reilly). Copyright 2022 Peter Bruce, Andrew Bruce y Peter Gedeck, 978-84-267-3443-3".

Si crees que el uso por tu parte de los ejemplos de código no está justificado o no respeta el permiso otorgado más arriba, no dudes en ponerte en contacto con nosotros en [email protected].

Agradecimientos

Los autores queremos expresar nuestro agradecimiento al numeroso grupo de personas que han contribuido a hacer realidad este libro.

Gerhard Pilcher, director ejecutivo de la empresa de minería de datos Elder Research, revisó los primeros borradores del libro y nos facilitó sus correcciones, así como detallados y útiles comentarios. Del mismo modo, Anya McGuirk y Wei Xiao, estadísticos de SAS, y Jay Hilfiger, autor de O'Reilly, proporcionaron comentarios útiles sobre los borradores iniciales del libro. Toshiaki Kurokawa, que tradujo la primera edición al japonés, realizó un completo trabajo de revisión y corrección durante la traducción. Aaron Schumacher y Walter Paczkowski revisaron minuciosamente la segunda edición del libro y aportaron numerosas sugerencias útiles y valiosas por las cuales les estamos muy agradecidos. No hace falta decir que cualquier error que exista es solo nuestro.

En O'Reilly, Shannon Cutt nos orientó con buen ánimo y la adecuada dosis de insistencia en el proceso de publicación. Por otra parte, Kristen Brown dirigió con éxito la fase de producción del libro. Rachel Monaghan y Eliahu Sussman, cuidadosa y pacientemente, corrigieron y mejoraron la redacción, mientras que Ellen Troutman-Zaig preparó el índice. Nicole Tache tomó las riendas de la segunda edición y dirigió el proceso de manera eficaz, proporcionando muchas y buenas sugerencias editoriales para mejorar la legibilidad del libro para una amplia audiencia. También agradecemos a Marie Beaugureau, que inició nuestro proyecto en O’Reilly, así como a Ben Bengfort, autor de O’Reilly e instructor de Statistics.com, que nos presentó a O’Reilly.

Nosotros, y los contenidos de este libro, también nos hemos beneficiado de las muchas conversaciones que Peter ha tenido a lo largo de los años con Galit Shmueli, coautor de otros proyectos editoriales.

Finalmente, nos gustaría agradecer especialmente a Elizabeth Bruce y Deborah Donnell su paciencia y apoyo para hacer posible este proyecto.

CAPÍTULO 1

Análisis exploratorio de datos

Este capítulo se centra en el primer paso de cualquier proyecto de ciencia de datos: la exploración de los datos.

La estadística clásica se ocupó casi exclusivamente de la inferencia, un conjunto de procedimientos, a veces complejo, para sacar conclusiones sobre grandes poblaciones a partir de muestras de pequeño tamaño. En 1962, John W. Tukey (figura 1.1) propugnó una reforma de la estadística en su trabajo académico de investigación "The Future of Data Analysis" [Tukey, 1962]. Propuso una nueva disciplina científica llamada análisis de datos (data analysis) que incluía la inferencia estadística como un componente más. Tukey forjó vínculos con los colectivos profesionales de ingeniería e informática (acuñó los términos bit, abreviatura de dígito binario, y software), y sus principios originales son sorprendentemente duraderos y forman parte de los fundamentos de la ciencia de datos. El campo del análisis exploratorio de datos se estableció con el que es ahora un libro clásico de Tukey publicado en 1977: Exploratory Data Analysis [Tukey, 1977]. Tukey presentó diagramas sencillos (por ejemplo, diagramas de caja, diagramas de dispersión) que, junto con resúmenes estadísticos (media, mediana, cuantiles, etc.), ayudan a dibujar la imagen de un conjunto de datos.

Con la disponibilidad de forma inmediata de la capacidad de cálculo y el potente software de análisis de datos, el análisis exploratorio de datos ha evolucionado mucho más allá de lo que fue su alcance original. Los impulsores clave de esta disciplina han sido el rápido desarrollo de nuevas tecnologías, el acceso a una mayor cantidad de datos y más importantes, así como la mayor utilización del análisis cuantitativo en numerosas disciplinas. David Donoho, profesor de estadística de la Universidad de Stanford y exalumno de Tukey, es autor de un excelente artículo inspirado en su exposición para el taller del centenario del nacimiento de Tukey (Tukey Centennial) en Princeton, Nueva Jersey [Donoho, 2015]. Donoho localiza la génesis de la ciencia de datos en el trabajo pionero de Tukey sobre el análisis de datos.

Figura 1.1John Tukey, el eminente estadístico cuyas ideas, que desarrolló hace más de 50 años, constituyen la base de la ciencia de datos.

Elementos de datos estructurados

Los datos proceden de muchas fuentes: mediciones de sensores, eventos, texto, imágenes y vídeos. Internet de las cosas (Internet of Things [IoT]) vomita caudales de información. Gran parte de estos datos no están estructurados: las imágenes son una colección de píxeles, y cada píxel contiene información sobre el color RGB (rojo, verde, azul). Los textos son secuencias de palabras y caracteres que no son palabras, y a menudo están organizados por secciones, subsecciones, etc. Los flujos de clics son secuencias de acciones de un usuario que interactúa con una aplicación o una página web. De hecho, un desafío importante de la ciencia de datos es convertir este torrente de datos sin procesar en información útil. Para aplicar los conceptos estadísticos tratados en el libro, los datos en bruto, no estructurados, deben procesarse y manejarse en un formato estructurado. Una de las formas más habituales en la que se presentan los datos estructurados es una tabla con filas y columnas, bien porque los datos pueden proceder de una base de datos relacional o porque los recopilamos así para su estudio.

Hay dos tipos básicos de datos estructurados: numéricos y categóricos. Los datos numéricos se presentan en dos modalidades: datos de carácter continuo (continuous), como es el caso de la velocidad del viento o la duración del tiempo, y discreto (discrete), como el recuento de las veces que ocurre un evento. Los datos categóricos (categorical) adoptan solo un conjunto fijo de valores, como pueden ser los tipos de pantallas de TV (plasma, LCD, led, etc.) o los nombres de los estados (Alabama, Alaska, etc.). Los datos binarios (binary) son un importante caso especial de datos categóricos que adoptan solo uno de dos valores, como 0/1, sí/no o verdadero/falso. Otro tipo muy útil de datos categóricos son los datos ordinales (ordinal), con los que se ordenan las categorías. Un ejemplo de estos datos es una clasificación numérica (1, 2, 3, 4 o 5).

¿Por qué nos molestamos en analizar la taxonomía de los tipos de datos? Pues porque resulta que a los efectos del análisis de datos y del modelado predictivo, el tipo de datos es importante para ayudar a determinar qué tipo de presentación visual utilizar, si la de análisis de datos o la de modelos estadísticos. De hecho, el software de la ciencia de datos, como R y Python, utiliza los tipos de datos para mejorar el rendimiento computacional. Y lo que es más importante, el tipo de datos de una variable determina cómo realizará el software los cálculos para esa variable.

Términos clave de los tipos de datos

Numéricos

Datos que se expresan en una escala numérica.

Continuos

Datos que pueden adoptar cualquier valor dentro de un intervalo. (Sinónimos: intervalo, flotante, numérico)

Discretos

Datos que solo pueden adoptar valores enteros, como los valores contables. (Sinónimos: entero, contable)

Categóricos

Datos que solo pueden adoptar un conjunto específico de valores que representan un conjunto de categorías posibles. (Sinónimos: enumeraciones, enumerado, factores, nominal)

Binarios

Son un caso especial de datos categóricos con solo dos categorías de valores, por ejemplo, 0/1, verdadero/falso. (Sinónimos: dicotómico, lógico, indicador, booleano)

Ordinales

Datos categóricos que tienen un orden explícito. (Sinónimos: factor ordenado)

Los ingenieros de software y los programadores de bases de datos pueden preguntarse por qué incluso necesitamos la noción de datos categóricos (categorical) y ordinales (ordinal) para el análisis. Después de todo, las categorías son simplemente una colección de valores de texto (o numéricos) y la base de datos subyacente maneja automáticamente la representación interna. Sin embargo, la identificación explícita de datos como categóricos, como algo diferente al texto, ofrece algunas ventajas:

• Saber que los datos son categóricos puede actuar como una señal que indica al software cómo deben comportarse los procedimientos estadísticos, como crear un gráfico o ajustar un modelo. En particular, los datos ordinales se pueden representar mediante ordered.factor en R, conservando el orden especificado por el usuario en gráficos, tablas y modelos. En Python, scikit-learn admite datos ordinales con sklearn.preprocessing.OrdinalEncoder.

• El almacenamiento y la indexación se pueden optimizar (como en una base de datos relacional).

• Los posibles valores que puede adoptar una variable categórica dada se aplican al software (como puede ser una enumeración).

El tercer "beneficio" puede conducir a un comportamiento no deseado o inesperado: el comportamiento predeterminado de las funciones de importación de datos en R (por ejemplo, read.csv) es convertir automáticamente una columna de texto en un factor.

Las operaciones posteriores en esa columna supondrán que los únicos valores permitidos para la columna son los que se importaron originalmente, y la asignación de un nuevo valor de texto introducirá una advertencia y producirá un NA (valor ausente). El paquete pandas de Python no realizará dicha conversión automáticamente. Sin embargo, podemos especificar una columna como categórica explícitamente con la función read_csv.

Ideas clave

• Los datos se clasifican en el software generalmente por tipos.

• En los tipos de datos están incluidos los numéricos (continuos, discretos) y categóricos (binarios, ordinales).

• La tipificación de datos en el software actúa como una señal que le indica al software cómo debe procesarlos.

Lecturas complementarias

• Los tipos de datos pueden crear confusión, ya que estos pueden superponerse, y la taxonomía de un tipo de software puede diferir de la de otro. El sitio web de RTutorial (www.r-tutor.com/) incluye la taxonomía de R. La documentación de pandas (https://pandas.pydata.org/docs/user_guide/) describe los diferentes tipos de datos y cómo se pueden manejar en Python.

• La clasificación de tipos de datos de las bases de datos es más detallada al incorporar consideraciones de niveles de precisión, campos de longitud fija o variable, entre otras cosas. Consultar la guía de W3Schools para SQL (www.w3schools.com/sql/).

Datos rectangulares

El marco de referencia típico para un análisis en ciencia de datos es el objeto de datos rectangulares (rectangular data), como puede ser una hoja de cálculo o una tabla de base de datos.

Datos rectangulares (rectangular data) es el término general asociado a una matriz bidimensional con filas que indican registros (casos) y columnas que indican características (variables). El marco de datos (data frame) es el formato específico en R y Python. Los datos no siempre tienen esta apariencia al principio: los datos no estructurados (por ejemplo, texto) deben procesarse y manipularse para que se puedan representar como un conjunto de características en la matriz de datos rectangulares (consultar "Elementos de datos estructurados" en la página 2). Para la mayor parte de las tareas de análisis y modelado de datos, los datos de las bases de datos relacionales deben extraerse y colocarse en una sola tabla.

Términos clave de los datos rectangulares

Marco de datos

Los datos rectangulares (como puede ser una hoja de cálculo) son la estructura básica de datos para los modelos estadísticos y de aprendizaje automático.

Característica

Una columna de una tabla se denomina generalmente característica (feature).

Sinónimos

atributo, entrada, predictor, variable

Resultado

Muchos proyectos de ciencia de datos implican pronosticar un resultado (outcome), a menudo un resultado de sí/no (en la tabla 1.1, es si "la subasta ha sido competitiva o no"). A veces, las características (features) se utilizan para pronosticar el resultado (outcome) de un estudio.

Sinónimos

variable dependiente, respuesta, objetivo, salida

Registros

A una fila dentro de una tabla se le denomina generalmente registro (register).

Sinónimos

caso, ejemplo, instancia, observación, patrón, muestra

Tabla 1.1 Típico formato del marco de datos

En la tabla 1.1, hay una combinación de datos medidos o contabilizados (por ejemplo, duración y precio) y datos categóricos (por ejemplo, categoría y divisa). Como se ha mencionado anteriormente, una forma especial de variable categórica es una variable binaria (sí/no o 0/1), como se ve en la columna de la derecha en la tabla 1.1, una variable indicadora que muestra si una subasta ha sido competitiva (si ha tenido varios postores) o no. Esta variable indicadora también resulta ser una variable de resultado (outcome), cuando el escenario es pronosticar si una subasta es competitiva o no.

Marcos de datos e índices

Las tablas de bases de datos tradicionales tienen una o más columnas designadas como índice, esencialmente un número de fila. Esta funcionalidad puede mejorar enormemente la eficiencia de determinadas consultas a bases de datos. En Python, con la biblioteca de pandas, la estructura básica de datos rectangulares es el objeto DataFrame. Por defecto, se crea un índice de enteros automático para un DataFrame basado en el orden de las filas. En pandas, también es posible establecer índices jerárquicos/multinivel para mejorar la eficiencia de ciertas operaciones.

En R, la estructura básica de datos rectangulares es el objeto data.frame. data.frame también tiene un índice implícito de enteros basado en el orden de las filas. El data.frame nativo de R no admite índices especificados por el usuario o multinivel, aunque se puede crear una clave personalizada mediante el atributo row.names. Para superar esta deficiencia, hay dos nuevos paquetes que se están utilizando de forma generalizada: data.table y dplyr. Ambos admiten índices multinivel y ofrecen importantes aumentos de velocidad cuando se trabaja con data.frame.

Diferencias terminológicas

La terminología de datos rectangulares puede resultar confusa. Los estadísticos y los científicos de datos usan términos diferentes para referirse al mismo concepto. Para un estadístico, las variables predictoras (predictor variables) se utilizan en un modelo para pronosticar una respuesta (response) o variable dependiente (dependent variable). Para un científico de datos, las características (features) se utilizan para pronosticar un objetivo (target). Los sinónimos resultan particularmente confusos: los informáticos usarán el término muestra (sample) para una única fila. Una muestra (sample) para un estadístico es una colección de filas.

Estructuras de datos no rectangulares

Existen otras estructuras de datos además de los datos rectangulares.

Los datos de serie de tiempo registran mediciones sucesivas de la misma variable. Es la materia prima de los métodos de pronóstico estadístico y también es un componente clave de los datos generados por los dispositivos del Internet de las cosas.

Las estructuras de datos espaciales, que se utilizan en cartografía y análisis de la localización, son más complejas y variadas que las estructuras de datos rectangulares. En la representación del objeto (object), el foco de los datos es un objeto (por ejemplo, una casa) y sus coordenadas espaciales. La vista de campo (field), por el contrario, se centra en pequeñas unidades de espacio y el valor de la métrica correspondiente (brillo de píxeles, por ejemplo).

Las estructuras de datos en forma de gráficos (o redes) se utilizan para representar relaciones físicas, sociales y abstractas. Por ejemplo, un gráfico de una red social, como Facebook o LinkedIn, puede representar conexiones entre personas en la red. Los centros de distribución conectados por carreteras son un ejemplo de una red física. Las estructuras de gráficos son útiles para ciertos tipos de problemas, como la optimización de redes o los sistemas de recomendación.

Cada uno de estos tipos de datos tiene su metodología especializada en ciencia de datos. El enfoque de este libro se centra en los datos rectangulares, el bloque de construcción fundamental del modelado predictivo.

Gráficos en estadística

En informática y tecnologías de la información, el término gráfico (graph) hace referencia normalmente a la descripción de las conexiones entre entidades y a la estructura de datos subyacente. En estadística, gráfico (graph) se utiliza para referirse a una variedad de diagramas y visualizaciones (visualizations), no solo de conexiones entre entidades, aunque el término se aplica solo a la visualización, no a la estructura de datos.

Ideas clave

• La estructura de datos básica en ciencia de datos es una matriz rectangular en la que las filas están formadas por registros y las columnas son las variables (características).

• La terminología puede resultar confusa. Existe una serie de sinónimos, procedentes de diferentes disciplinas, que contribuyen a la ciencia de datos (estadística, informática y tecnologías de la información).

Lecturas complementarias

• Documentación sobre marcos de datos en R (https://stat.ethz.ch/R-manual/R-devel/library/base/html/data.frame.html).

• Documentación sobre marcos de datos en Python (https://pandas.pydata.org/pandas-docs/stable/user_guide/dsintro.html).

Estimación de la localización

Las variables, con los datos medidos o procedentes de recuentos, pueden tener miles de valores distintos. Un paso fundamental para explorar los datos es obtener un "valor típico" para cada característica (variable): una estimación de dónde se encuentra la mayoría de los datos (es decir, su tendencia central).

Términos clave de la estimación de la localización

Media

Suma de todos los valores dividida por el número de valores.

Sinónimos

promedio

Media ponderada

Suma de todos los valores multiplicados por cada ponderación y dividida por la suma de las ponderaciones.

Sinónimo

promedio ponderado

Mediana

Valor tal que la mitad del número de datos se encuentra por encima y la otra mitad por debajo de dicho valor.

Sinónimo

Percentil 50

Percentil

Valor tal que el P por ciento de los datos se encuentra por debajo del mismo.

Sinónimo

cuantil

Mediana ponderada

Valor tal que la mitad de la suma de las ponderaciones se encuentra por encima y la otra mitad por debajo de los datos ordenados.

Media recortada

El promedio de todos los valores después de eliminar un número fijo de valores extremos.

Sinónimo

media truncada

Robusto

Insensible a valores extremos.

Sinónimo

resistente

Atípico

Valor de un dato que es muy diferente de la mayoría de los valores de datos.

Sinónimo

valor extremo

A primera vista, resumir los datos puede parecer bastante trivial: simplemente hay que extraer la media (mean) de los datos. De hecho, si bien la media es fácil de calcular y conveniente de usar, es posible que no siempre sea la mejor medida para representar un valor central. Por esta razón, los estadísticos han desarrollado y promovido varias estimaciones alternativas a la media.

Métricas y estimaciones

Los estadísticos a menudo utilizan el término estimación (estimate) para referirse a un valor calculado a partir de los datos disponibles, para establecer una distinción entre lo que vemos a partir de los datos y el verdadero estado teórico o exacto de las cosas. Es más probable que los científicos de datos y los analistas de negocios se refieran a este valor como métrica (metric). La diferencia refleja el enfoque de la estadística frente al de la ciencia de datos. Hay que tener en cuenta que la explicación de la incertidumbre se encuentra en el corazón de la disciplina de la estadística, mientras que el foco de la ciencia de datos son los objetivos concretos de las organizaciones o de las empresas. Por lo tanto, los estadísticos estiman y los científicos de datos miden.

Media

N (o n) se refiere al número total de registros u observaciones. En estadística, se escribe con mayúscula si se refiere a una población y en minúscula si se refiere a una muestra de una población. En la ciencia de datos, esa distinción no es vital, por lo que se puede ver de las dos formas.

La variación de la media se conoce como media truncada (trimmed mean), que se calcula ignorando un número fijo, en cada extremo, de valores ordenados y a continuación se calcula el promedio de los valores restantes. Al representar los valores ordenados por x(1), x(2), ..., x(n) donde x(1) es el valor más pequeño y x(n) el valor más grande, la fórmula para calcular la media recortada con los p valores más pequeños y más grandes omitidos es:

La media truncada elimina la influencia de valores extremos. Por ejemplo, en el buceo internacional, se eliminan las puntuaciones máxima y mínima de cinco jueces, y la puntuación final es el promedio de las puntuaciones de los tres jueces restantes (https://en.wikipedia.org/wiki/Diving_(sport)#Scoring_the_dive). Esto hace que sea difícil para un solo juez manipular la puntuación, tal vez para favorecer al concursante de su país. Las medias truncadas se utilizan habitualmente y, en muchos casos, son preferibles a la media ordinaria. En el apartado "Estimación de medianas robustas" de la página 10 se amplía esta información.

Otro tipo de media es la media ponderada (weighted mean), que se calcula multiplicando cada valor de datos xi por el peso wi especificado por el usuario y dividiendo su suma por la suma de las ponderaciones. La fórmula para una media ponderada es:

Hay dos motivos fundamentales para usar una media ponderada:

• Algunos valores son intrínsecamente más variables que otros, y las observaciones muy variables reciben un peso menor. Por ejemplo, si tomamos el promedio de varios sensores y uno de los sensores es menos preciso, entonces podríamos reducir la ponderación de los datos de ese sensor.

• Los datos recopilados no representan por igual a los diferentes grupos que nos interesa medir. Por ejemplo, debido a la forma en la que se ha realizado un experimento en línea, es posible que no tengamos un conjunto de datos que refleje con precisión todos los grupos en la base de datos de los usuarios. Para corregir eso, podemos dar un mayor peso a los valores de los grupos que tengan una menor representación.

Estimación de medianas robustas

La mediana (median) es el valor central de una lista de datos ordenados de menor a mayor. Si hay un número par de valores de datos, el valor medio es uno que no está realmente en el conjunto de datos, sino el promedio de los dos valores que dividen los datos ordenados en mitades superior e inferior. En comparación con la media, que utiliza todas las observaciones, la mediana depende solo de los valores situados en el centro de los datos ordenados. Si bien esto puede parecer una desventaja, dado que la media es mucho más sensible a los datos, hay muchos casos en los que la mediana es una mejor métrica para la localización. Supongamos que queremos analizar los ingresos familiares típicos en los vecindarios de los alrededores del lago Washington en Seattle. Al comparar el vecindario de Medina con el de Windermere, la utilización de la media produciría resultados muy diferentes porque Bill Gates vive en Medina. Si usamos la mediana, no importará lo rico que sea Bill Gates, porque la posición de la observación intermedia seguirá siendo la misma.

Por las mismas razones por las que se usa una media ponderada, también es posible calcular una mediana ponderada (weighted median). Al igual que con la mediana, primero ordenamos los datos, aunque cada valor de los datos tiene una ponderación asociada. En lugar del número del medio, la mediana ponderada es un valor tal que la suma de las ponderaciones es igual para las mitades inferior y superior de la lista ordenada. Como la mediana, la mediana ponderada es robusta a valores atípicos.

Valores atípicos

A la mediana se le conoce como una estimación robusta (robust) de la localización, ya que no está influenciada por valores atípicos (outliers) (casos extremos) que podrían sesgar los resultados. Un valor atípico es cualquier valor que está muy lejos de los otros valores en el conjunto de datos. La definición exacta de valor atípico es algo subjetiva, a pesar de que se utilizan ciertas convenciones en distintos resúmenes de datos y diagramas (consultar "Percentiles y diagramas de caja" en la página 20). Ser un valor atípico en sí mismo no hace que un valor de los datos no sea válido o sea erróneo (como en el ejemplo anterior con Bill Gates). Aun así, los valores atípicos son a menudo el resultado de errores de datos, como la combinación de datos de diferentes unidades (kilómetros en lugar de metros) o las lecturas incorrectas de un sensor. Cuando los valores atípicos son el resultado de datos incorrectos, la media dará como resultado una estimación deficiente de la localización, mientras que la mediana seguirá siendo válida. Los valores atípicos deben identificarse y, por lo general, merecen una investigación más profunda.

Detección de anomalías

En contraste con el análisis normal de datos, donde los valores atípicos son a veces informativos y a veces molestos, en la detección de anomalías (anomaly detection) los puntos que nos interesan son los valores atípicos, y la mayor masa de datos sirve principalmente para definir la "normalidad" con la que se miden las anomalías.

La mediana no es la única estimación robusta de la localización. De hecho, la media truncada se usa habitualmente para evitar la influencia de valores atípicos. Por ejemplo, truncar el 10% inferior y superior (una opción frecuente) de los datos proporcionará protección contra valores atípicos en todos los conjuntos de datos, excepto en los más pequeños. La media truncada se puede considerar un compromiso entre la mediana y la media: es robusta a los valores extremos de los datos, pero utiliza más datos para calcular la estimación de la localización.

Otras métricas robustas para la localización

Los estadísticos han desarrollado una plétora de otros estimadores de localización, principalmente con el objetivo de desarrollar un estimador más robusto que la media y también más eficiente (es decir, más capaz de discernir pequeñas diferencias de localización entre conjuntos de datos). Si bien estos métodos son potencialmente útiles para conjuntos de datos pequeños, no es probable que proporcionen algún beneficio adicional para conjuntos con cantidades grandes de datos o incluso de tamaño moderado.

Ejemplo: estimaciones de localización de la población y tasas de homicidios

La tabla 1.2 muestra las primeras filas del conjunto de datos que contienen la población y las tasas de homicidios (en unidades de homicidios por cada 100 000 habitantes y por año) para cada estado de EE. UU. (censo de 2010).

Tabla 1.2 Algunas filas de data.frame de la situación de la población y la tasa de homicidios por estados

Utilizamos R para calcular la media, la media truncada y la mediana de la población:

Para calcular la media y la mediana con Python, podemos emplear los métodos pandas del marco de datos. La media truncada requiere la función trim_mean de scipy.stats:

La media es mayor que la media truncada, que es mayor que la mediana.

Esto se debe a que la media truncada excluye los cinco estados más grandes y más pequeños (trim=0.1 ignora el 10% de cada extremo). Si queremos calcular la tasa de homicidios promedio para el país, necesitamos usar una media o mediana ponderadas para dar cuenta de las diferentes poblaciones de los estados. Dado que el software básico de R no tiene una función para la mediana truncada, necesitamos instalar el paquete matrixStats:

Con NumPy podemos disponer de la media ponderada. Para la mediana ponderada, podemos usar el paquete especializado wquantiles (https://pypi.org/project/wquantiles/):

En este caso, la media ponderada y la mediana ponderada son aproximadamente iguales.

Ideas clave

• La métrica básica para la localización es la media, pero puede ser sensible a valores extremos (valores atípicos).

• Otras métricas (mediana, media truncada) son menos sensibles a valores atípicos y a distribuciones inusuales y, por lo tanto, son más robustas.

Lecturas complementarias

• El artículo de Wikipedia sobre tendencia central contiene un amplio debate sobre varias medidas de localización.

• El clásico Exploratory Data Analysis (Pearson) de John Tukey de 1977 todavía se lee bastante.

Estimación de la variabilidad

La localización es solo una dimensión para extraer el resumen de una característica. Una segunda dimensión, la variabilidad (variability), también conocida como dispersión (dispersion), mide el grado de agrupación o dispersión de los valores de los datos. En el corazón de la estadística se encuentra la variabilidad: hay que medirla, reducirla, distinguir la variabilidad aleatoria de la real, identificar las diversas fuentes de variabilidad real y tomar decisiones teniéndola en cuenta.

Términos clave de métricas de variabilidad

Desviaciones

Diferencias entre los valores observados y la estimación de la localización.

Sinónimos

errores, residuales

Varianza

Suma de los cuadrados de las desviaciones de la media al cuadrado y dividida por n – 1, donde n es el número de valores de datos.

Sinónimo

error cuadrático medio

Desviación estándar

Raíz cuadrada de la varianza.

Desviación media absoluta

Media de los valores absolutos de las desviaciones de la media.

Sinónimos

norma L1, norma Manhattan

Desviación absoluta mediana de la mediana

Mediana de los valores absolutos de las desviaciones de la mediana.

Rango

La diferencia entre el mayor y el menor valor de un conjunto de datos.

Estadísticos ordinales

Métricas basadas en los valores de datos ordenados de menor a mayor.

Sinónimo

rangos

Percentil

Valor tal que el P por ciento de los valores toma este valor o un valor inferior y para (100 – P) el porcentaje toma este valor o un valor superior.

Sinónimo

cuantil

Rango intercuartil

Diferencia entre el percentil 75 y el percentil 25.

Sinónimo

IQR

Así como existen diferentes formas de medir la localización (media, mediana, etc.), también existen diferentes formas de medir la variabilidad.

Desviación estándar y estimaciones relacionadas

donde x es la media muestral.

Las estimaciones de variabilidad más conocidas son la varianza (variance) y la desviación estándar (standard deviation), que se calculan a partir del cuadrado de las desviaciones. La varianza es un promedio del cuadrado de las desviaciones y la desviación estándar es la raíz cuadrada de la varianza:

La desviación estándar es mucho más fácil de interpretar que la varianza, ya que está en la misma escala que los datos originales. Aun así, con su fórmula más complicada y menos intuitiva, podría parecer peculiar que en estadística se prefiera la desviación estándar a la desviación media absoluta. Debe su supremacía a la teoría estadística, ya que trabajar matemáticamente con valores al cuadrado es mucho más conveniente que con valores absolutos, especialmente en el caso de modelos estadísticos.

Grados de libertad, y ¿n o n – 1?

En los libros de estadística, siempre se discute por qué tenemos n – 1 en el denominador en la fórmula de la varianza, en lugar de n, lo que conduce al concepto de grados de libertad (degrees of freedom). Esta distinción no es importante ya que n es generalmente lo suficientemente grande como para que no haya mucha diferencia si dividimos entre n o n – 1. Pero en caso de que sea de interés, lo explicamos a continuación. Se fundamenta en la premisa de que deseamos hacer estimaciones sobre una población, basándonos en una muestra.

Si usamos el denominador intuitivo de n en la fórmula de la varianza, subestimaremos el valor real de la varianza y la desviación estándar en la población. Esto se conoce como estimación sesgada (biased). Sin embargo, si dividimos por n – 1 en lugar de n, la varianza se convierte en una estimación no sesgada (unbiased).

Explicar completamente por qué el uso de n conduce a una estimación sesgada implica la noción de grados de libertad, que tiene en cuenta el número de restricciones al calcular una estimación. En este caso, hay n – 1 grados de libertad, ya que hay una restricción: la desviación estándar depende del cálculo de la media muestral. Para la mayoría de los problemas, los científicos de datos no necesitan preocuparse por los grados de libertad.

La varianza, la desviación estándar y la desviación absoluta mediana son robustas a valores atípicos y extremos (consultar "Estimación de medianas robustas" en la página 10, donde se desarrolla un debate sobre estimaciones robustas para la localización). La varianza y la desviación estándar son especialmente sensibles a los valores atípicos, ya que se basan en las desviaciones al cuadrado.

Una estimación robusta de la variabilidad es la desviación absoluta mediana de la mediana (median absolute deviation from the median) o MAD:

donde m es la mediana. Al igual que la mediana, la MAD no se ve influenciada por valores extremos. También es posible calcular la desviación estándar truncada análoga a la media truncada (consultar "Media" en la página 9).

La varianza, la desviación estándar, la desviación media absoluta y la desviación absoluta mediana no son estimaciones equivalentes, incluso en el caso de que los datos provengan de una distribución normal. De hecho, la desviación estándar es siempre mayor que la desviación absoluta media, que a su vez es mayor que la desviación absoluta mediana. A veces, la desviación absoluta mediana se multiplica por un factor de escala constante para adaptarla a la misma escala que la desviación estándar en el caso de una distribución normal. El factor que se utiliza normalmente de 1.4826 significa que el 50% de la distribución normal cae dentro del rango ± MAD.

Estimación basada en percentiles

Un enfoque diferente para estimar la dispersión se centra en observar la distribución de los datos ordenados. Los estadísticos que tienen como base los datos ordenados (clasificados) se denominan estadísticos de orden (order statistics). La medida más elemental es el rango (range): la diferencia entre los números de mayor y menor valor. Es de utilidad conocer los valores mínimos y máximos en sí, además de práctico, para identificar valores atípicos, pero el rango es extremadamente sensible a los valores atípicos y no es muy útil como medida general de la dispersión de datos.

Para evitar la sensibilidad a los valores atípicos, podemos observar el rango de los datos después de eliminar valores de cada extremo. Formalmente, este tipo de estimaciones se basan en diferencias entre percentiles (percentiles). En un conjunto de datos, el percentil P es un valor tal que al menos el P por ciento de los valores toman este valor o un valor inferior y al menos (100 - P) por ciento de los valores toman este valor o un valor superior. Por ejemplo, para encontrar el percentil 80, ordenamos los datos. Luego, comenzando por el valor más pequeño, continuamos hasta el 80% del recorrido para llegar al mayor valor. Hay que tener en cuenta que la mediana es lo mismo que el percentil 50. El percentil es esencialmente lo mismo que el cuantil (quantile), con los cuantiles referenciados por porcentajes (por lo que el cuantil 0.8 es lo mismo que el percentil 80).

Para conjuntos de datos muy grandes, calcular percentiles exactos puede ser muy costoso desde el punto de vista del cálculo, ya que requiere ordenar todos los valores de los datos. El aprendizaje automático y el software estadístico utilizan algoritmos especiales [Zhang-Wang, 2007] para obtener un percentil aproximado que se puede calcular con mucha rapidez y tiene garantizada una cierta precisión.

Percentil: definición precisa

Si tenemos un número par de datos (n es par), entonces el percentil es ambiguo según la definición anterior. De hecho, podríamos tomar cualquier valor entre los estadísticos de orden x(j) y x(j + 1), donde j satisface:

Formalmente, el percentil es el promedio ponderado:

para alguna ponderación w entre 0 y 1. El software estadístico tiene enfoques ligeramente diferentes para elegir w. De hecho, la función quantile de R ofrece nueve alternativas diferentes para calcular el cuantil. A excepción de los conjuntos de datos pequeños, normalmente no es necesario preocuparse por la forma precisa en que se calcula el percentil. En el momento de escribir estas líneas, numpy.quantile de Python solo admite un enfoque: la interpolación lineal.

Ejemplo: estimaciones de variabilidad de la población estatal

La tabla 1.3 (repetición de la tabla 1.2 para hacerlo más cómodo) muestra las primeras filas del conjunto de datos que contienen las tasas de población y de los homicidios para cada estado.

Tabla 1.3 Algunas filas de data.frame de la situación de la población y la tasa de homicidios por estados

Utilizando las funciones integradas de R para la desviación estándar, el rango intercuartílico (IQR) y la desviación absoluta mediana de la mediana (MAD), podemos calcular las estimaciones de variabilidad para los datos de la población estatal:

El marco de datos de pandas proporciona métodos para calcular la desviación estándar y los cuantiles. Usando los cuantiles, podemos determinar fácilmente el IQR. Para la MAD robusta, usamos la función robust.scale.mad del paquete statsmodels:

La desviación estándar es casi dos veces mayor que la MAD (en R, por defecto, la escala de la MAD se ajusta para estar en la misma escala que la de la media). Este hecho no es sorprendente, ya que la desviación estándar es sensible a valores atípicos.

Ideas clave

• La varianza y la desviación estándar son los estadísticos de variabilidad más difundidos y de los que más se informa de manera rutinaria.

• Ambos son sensibles a los valores atípicos.

• Entre las métricas más robustas se encuentran la desviación absoluta media, la desviación absoluta mediana de la mediana y los percentiles (cuantiles).

Lecturas complementarias

• El recurso de estadísticos en línea de David Lane tiene una sección sobre percentiles

(https://onlinestatbook.com/2/introduction/percentiles.html).

• Kevin Davenport tiene una publicación interesante en R-Bloggers (https://www.rbloggers.com/2013/08/absolute-deviation-around-the-median/) sobre las desviaciones de la mediana y sus propiedades robustas.

Exploración de la distribución de datos

Cada una de las estimaciones que tratamos aquí resume los datos en una sola cifra para describir la localización o la variabilidad de los datos. También es interesante explorar cómo se distribuyen los datos en general.

Términos clave de la exploración de la distribución

Diagrama de caja

Diagrama presentado por Tukey para visualizar de forma rápida la distribución de datos.

Sinónimo

diagrama de caja y bigotes

Tabla de frecuencias

Registro del recuento de valores de datos numéricos que caen en un conjunto de intervalos (contenedores).

Histograma

Diagrama de la tabla de frecuencias con los contenedores o intervalos en el eje x y el recuento (o proporción) en el eje y. Aunque los gráficos de barras son visualmente similares, no deben confundirse con los histogramas. Consultar “Exploración de datos binarios y categóricos” en la página 27 para obtener más información sobre las diferencias entre ambas presentaciones.

Diagrama de densidad

Versión suavizada del histograma, a menudo basada en una estimación de la densidad del núcleo (kernel density estimate).

Percentiles y diagramas de caja

En "Estimación basada en percentiles" en la página 16, exploramos cómo se pueden utilizar los percentiles para medir la dispersión de los datos. Los percentiles también son útiles para extraer un resumen de toda la distribución. Es habitual informar los cuartiles (percentiles 25, 50 y 75) y los deciles (percentiles 10, 20,…, 90). Los percentiles son especialmente indicados para extraer el resumen de las colas (tails) (partes de los extremos del rango) de la distribución. La cultura popular ha acuñado el término de los uno por ciento (one-percenters) para referirse a las personas con una riqueza superior al percentil 99.

La tabla 1.4 muestra algunos percentiles de la tasa de homicidios por estados. En R, esta información la facilita la función quantile:

En Python la proporciona el método quantile del marco de datos de pandas:

Tabla 1.4 Percentiles de tasa de homicidios por estados

La mediana es de 4 homicidios por cada 100 000 habitantes, aunque hay bastante variabilidad: el percentil 5 es solo 1.6 y el percentil 95 es 6.51.

Los diagramas de caja (boxplots), presentados por Tukey [Tukey, 1977], utilizan percentiles y permiten visualizar la distribución de datos de una forma rápida. La figura 1.2 muestra el diagrama de caja de la población por cada estado, que proporciona R:

pandas proporciona una serie de gráficos exploratorios básicos para el marco de datos. Uno de ellos es el diagrama de caja:

Figura 1.2Diagrama de caja de la población por estados.

En este diagrama de caja, podemos ver de forma inmediata que la mediana de la población por estados es de alrededor de 5 millones, la mitad de los estados se encuentran entre aproximadamente 2 millones y 7 millones, y hay algunos valores atípicos de altos niveles de población. La parte superior e inferior del cuadro son los percentiles 75 y 25, respectivamente. La mediana se muestra mediante una línea horizontal dentro del cuadro. Las líneas discontinuas, denominadas bigotes (whiskers), se extienden desde las partes superior e inferior del cuadro para indicar el rango de la mayor parte de los datos. Hay muchas variaciones del diagrama de caja. Ver, por ejemplo, la documentación de la función boxplot de R [R-base, 2015]. Por defecto, la función R extiende los bigotes hasta el punto más alejado fuera de la caja, pero no van más allá de 1.5 veces el IQR. Matplotlib utiliza la misma implementación. Cualquier otro software puede usar una regla diferente.

Los datos que aparecen fuera de los bigotes se representan como puntos o círculos (a menudo considerados valores atípicos).

Tablas de frecuencias e histogramas

La tabla de frecuencias de una variable divide el rango de la variable en segmentos igualmente espaciados y nos dice cuántos valores caen dentro de cada segmento. La tabla 1.5 muestra la tabla de frecuencias de la población por cada estado calculada mediante R:

La función pandas.cut crea una serie que asigna los valores a los segmentos. Mediante el método value_counts, obtenemos la tabla de frecuencias:

Tabla 1.5 Tabla de frecuencias de la población por estados

Tanto las tablas de frecuencias como los percentiles, extraen el resumen de los datos mediante la creación de contenedores. En general, los cuartiles y deciles tendrán el mismo número de valores en cada contenedor (contenedores de igual número de valores), pero los tamaños de los contenedores serán diferentes. La tabla de frecuencias, por el contrario, tendrá diferente número de valores en los contenedores (contenedores de igual tamaño) y el tamaño de los contenedores será el mismo para todos.

El histograma es un modo de visualizar la tabla de frecuencias, con contenedores en el eje x y los valores de los datos en el eje y. En la figura 1.3, por ejemplo, el contenedor centrado en 10 millones (1e + 07) va de aproximadamente 8 millones a 12 millones, y hay seis estados en ese contenedor. Para crear mediante R el histograma correspondiente a la tabla 1.5, utilizamos la función hist con el argumento breaks:

pandas soporta histogramas para marcos de datos con el método DataFrame.plot.hist. Utilizamos el argumento de palabra clave bins para definir el número de contenedores. Los diversos métodos de diagramas proporcionan como resultado un eje de objetos que permite mejorar el ajuste de la visualización mediante Matplotlib:

El histograma se muestra en la figura 1.3. En general, los histogramas se representan gráficamente teniendo en cuenta que:

• Los contenedores vacíos se incluyen en el gráfico.

• Los contenedores tienen la misma anchura.

• El número de contenedores (o, de manera equivalente, el tamaño del contenedor) depende del usuario.

• Las barras son contiguas: no se muestran espacios vacíos entre las barras, a menos que haya un contenedor vacío.

Figura 1.3Histograma de población por estados.

Momentos de la distribución estadística

En teoría estadística, la localización y la variabilidad se conocen como el primer y segundo momentos (moments) de una distribución. Los momentos tercero y cuarto se denominan asimetría (skewness) y curtosis (kurtosis). La asimetría se refiere a si los datos están sesgados hacia valores mayores o menores, y la curtosis indica la propensión de los datos a tener valores extremos. Generalmente, no se utilizan métricas para medir la asimetría y la curtosis, sino que se descubren a través de presentaciones visuales como las figuras 1.2 y 1.3.

Diagrama y estimación de la curva de densidad

Relacionado con el histograma existe el diagrama de densidad, que muestra la distribución de los valores de los datos mediante una línea continua. Un diagrama de densidad se puede considerar como un histograma suavizado, aunque normalmente se calcula directamente a partir de los datos a través de una estimación de la densidad del núcleo (kernel density estimate) (ver [Duong, 2001], un breve tutorial). La figura 1.4 muestra la estimación de la densidad, que aparece superpuesta al histograma. En R, podemos calcular la estimación de la densidad utilizando la función density:

pandas proporciona el método density para crear el diagrama de densidad. Utilizamos el argumento bw_method para controlar la suavidad de la curva de densidad:

Las funciones del diagrama a menudo adoptan opcionalmente el argumento de eje (ax), lo que hará que el diagrama se agregue al mismo gráfico.

Una distinción clave del histograma con diagrama de la figura 1.3 es la escala del eje y: el diagrama de densidad corresponde a la representación del histograma en porcentajes en lugar de hacerlo por el número de valores (esta opción la especificamos en R usando el argumento freq=FALSE). Hay que tener en cuenta que el área total por debajo de la curva de densidad es igual a 1 y, en lugar de aparecer el número de valores de los contenedores, calculamos el área que queda por debajo de la curva entre dos puntos cualesquiera en el eje x, que corresponde al porcentaje de la distribución que se encuentra entre esos dos puntos.

Figura 1.4Densidad de las tasas de homicidios por estados.

Valoración de la densidad

La valoración de la densidad es un tema candente con una larga historia en la literatura estadística. De hecho, se han publicado más de 20 paquetes R que ofrecen funciones para la valoración de la densidad. [Deng-Wickham, 2011] proporciona una revisión completa de los paquetes R, con una recomendación particular para ASH o KernSmooth. Los métodos de valoración de la densidad en pandas y scikit-learn también proporcionan buenas aplicaciones. Para muchos problemas de ciencia de datos, no hay necesidad de preocuparse por los diversos tipos de estimaciones de la densidad, basta con utilizar las funciones básicas.

Ideas clave

• El histograma de frecuencias representa las frecuencias de los resultados (recuentos) en el eje y y los valores de la variable en el eje x. Proporciona de un vistazo una idea de la distribución de los datos.

• La tabla de frecuencias es una versión tabular de las frecuencias de los resultados que se encuentran en un histograma.

• Un diagrama de caja, con la parte superior e inferior de la caja en los percentiles 75 y 25, respectivamente, también da una idea rápida de la distribución de los datos. A menudo se utiliza en visualizaciones paralelas para comparar distribuciones.

• El diagrama de densidad es una versión suavizada del histograma. Requiere una función para estimar el diagrama basado en los datos (por supuesto, son posibles múltiples estimaciones).

Lecturas complementarias

• Un profesor de SUNY Oswego proporciona una guía paso a paso para crear un diagrama de caja (https://www.oswego.edu/~srp/stats/bp_con.htm).

• La valoración de la densidad en R se trata en el artículo del mismo nombre de Henry Deng y Hadley Wickham (http://vita.had.co.nz/papers/density-estimation.pdf).

•R-Bloggers tiene una publicación muy útil sobre histogramas con R (https://www.rbloggers.com/2012/12/basics-of-histograms/), que incluye elementos de personalización, como es el agrupamiento (uso de breaks()).

•R-Bloggers también tiene una publicación similar sobre el diagrama de caja con R (https://www.r-bloggers.com/2013/06/box-plot-with-r-tutorial/).

• Matthew Conlen tiene una presentación interactiva (https://mathisonian.github.io/kde/) que demuestra el efecto de elegir diferentes núcleos y ancho de banda en las estimaciones de densidad del núcleo.

Exploración de datos binarios y categóricos

En el caso de los datos categóricos, las proporciones simples o porcentajes cuentan la historia de los datos.

Términos clave de la exploración de datos categóricos

Moda

Categoría o valor que ocurre con más frecuencia en un conjunto de datos.

Valor esperado

Cuando las categorías se pueden asociar con un valor numérico, el valor esperado proporciona un valor promedio basado en la probabilidad de ocurrencia de una categoría.

Gráficos de barras

Frecuencia o proporción de cada categoría representada en barras.

Gráficos en forma de tarta

Frecuencia o proporción de cada categoría representada en forma de cuña de un pastel.

Obtener el resumen de una variable binaria o una variable categórica con varias categorías es un asunto bastante fácil: sencillamente calculamos la proporción de 1 o las proporciones de las categorías importantes. Por ejemplo, la tabla 1.6