Mostrar promedio en lugar de mediana en diagrama de caja [cerrado]

15

Cuando se traza una gráfica de caja con python matplotblib, las líneas a la mitad de la gráfica son la mediana de la distribución.

¿Existe la posibilidad de tener la línea en el promedio? O para trazarlo junto a él con un estilo diferente.

Además, debido a que es común que la línea sea la mediana, ¿realmente confundirá a mis lectores si hago el promedio (por supuesto, agregaré una nota sobre cuál es la línea media)?

Peter Smit
fuente

Respuestas:

25

Este código crea los diagramas de caja y luego coloca un círculo que marca la media de cada cuadro. Puede usar un símbolo diferente especificando el argumento marcador en la llamada a scatter.

import numpy as np
import pylab

# 3 boxes
data = [[np.random.rand(100)] for i in range(3)]
pylab.boxplot(data)

# mark the mean    
means = [np.mean(x) for x in data]
pylab.scatter([1, 2, 3], means)

texto alternativo

ars
fuente
33
Ver stackoverflow.com/questions/2492947/… para soluciones usando R
James
1
@ James: No estoy tratando de ser un imbécil y destacarte, pero tu comentario me plantea una pregunta. ¿Por qué es que cada vez que alguien en este foro pregunta explícitamente cómo hacer algo usando un lenguaje que no sea R (dado que R es el valor predeterminado de facto ), alguien siempre tiene que sugerir usar R? No encuentro mucho lo contrario. Los programadores de SAS generalmente no comentan "¿Cómo hago X en R?" preguntas con "Aquí es cómo hacerlo en SAS ...". Sé que a la gente le encanta R (y yo también), pero ...
Josh Hemann
20

Para responder a su segunda pregunta: Sí, creo que será confuso poner la línea en la media en lugar de la mediana. Las reglas precisas que controlan la longitud de los 'bigotes' (si los hay) y el tratamiento de los valores atípicos varían, pero todos usan el cuadro de Tukey para mostrar la mediana y los cuartiles inferior y superior. Para distribuciones muy sesgadas, la media podría estar fuera de la caja, lo que se vería muy extraño. El uso común es que la mediana va con el rango intercuartil, mientras que la media va con la desviación estándar (o error estándar de la media si está interesado en la inferencia en lugar de la descripción de los datos). Si desea mostrar la media visualmente, usaría un símbolo diferente para mostrarla para evitar confusiones.

una parada
fuente