multiple python matplotlib statistics boxplot

python - multiple - Boxplots en matplotlib: marcadores y valores atípicos



boxplot python (5)

Además de la respuesta seth (ya que la documentación no es muy precisa con respecto a esto): Q1 (los wiskers) se colocan en el valor máximo por debajo de 75% + 1.5 IQR

(valor mínimo de 25% - 1.5 IQR)

Este es el código que calcula la posición de los bigotes:

# get high extreme iq = q3 - q1 hi_val = q3 + whis * iq wisk_hi = np.compress(d <= hi_val, d) if len(wisk_hi) == 0 or np.max(wisk_hi) < q3: wisk_hi = q3 else: wisk_hi = max(wisk_hi) # get low extreme lo_val = q1 - whis * iq wisk_lo = np.compress(d >= lo_val, d) if len(wisk_lo) == 0 or np.min(wisk_lo) > q1: wisk_lo = q1 else: wisk_lo = min(wisk_lo)

Tengo algunas preguntas sobre boxplots en matplotlib:

Pregunta A. ¿Qué representan los marcadores que destaqué a continuación con Q1 , Q2 y Q3 ? Creo que Q1 es máximo y Q3 son valores atípicos, pero ¿qué es Q2 ?

Pregunta B ¿Cómo matplotlib identifica los valores atípicos ? (es decir, ¿cómo sabe que no son los verdaderos valores max y min ?)


Aquí hay un gráfico que ilustra los componentes de la caja de una respuesta stats.stackexchange . Tenga en cuenta que k = 1.5 si no proporciona la palabra clave whis en Pandas.

La función de diagrama de caja en Pandas es un contenedor para matplotlib.pyplot.boxplot . Los documentos matplotlib explican los componentes de las cajas en detalle:

Pregunta A:

La caja se extiende desde los valores del cuartil inferior a superior de los datos, con una línea en la mediana.

es decir, una cuarta parte de los valores de datos de entrada está debajo de la caja y un cuarto sobre la caja.

Pregunta B:

whis: flotación, secuencia o cuerda (por defecto = 1.5)

Como un flotador, determina el alcance de los bigotes al más allá del primer y tercer cuartil. En otras palabras, cuando IQR es el rango intercuartílico (Q3-Q1), el bigote superior se extenderá hasta el último dato menor que Q3 + whis * IQR). De manera similar, el bigote inferior se extenderá al primer dato mayor que Q1 - whis * IQR. Más allá de los bigotes, los datos se consideran atípicos y se trazan como puntos individuales.

Matplotlib (y Pandas) también le ofrece muchas opciones para cambiar esta definición predeterminada de bigotes:

Establezca esto en un valor irrazonablemente alto para forzar a los bigotes a mostrar los valores mínimo y máximo. Alternativamente, establezca esto en una secuencia ascendente de percentil (por ejemplo, [5, 95]) para establecer los bigotes en percentiles específicos de los datos. Finalmente, el whis puede ser el "rango" de cuerdas para forzar los bigotes a los mínimos y máximos de los datos.


En caso de que esto pueda beneficiar a alguien más, necesitaba poner una leyenda en uno de mis gráficos de diagrama de caja, así que hice este pequeño .png en Inkscape y pensé que lo compartiría.


La caja representa el primer y tercer cuartiles, con la línea roja, la mediana (2 ° cuartil). La documentation proporciona los bigotes predeterminados en 1.5 IQR:

boxplot(x, notch=False, sym=''+'', vert=True, whis=1.5, positions=None, widths=None, patch_artist=False, bootstrap=None, usermedians=None, conf_intervals=None)

y

whis: [por defecto 1.5]

Define la longitud de los bigotes en función del rango del cuartil interno. Se extienden hasta el punto de datos más extremos dentro del rango de datos (whis * (75% -25%)).

Si no está seguro de las representaciones de diagramas de cuadros diferentes, intente leer la descripción en wikipedia .


Una imagen vale mas que mil palabras. Tenga en cuenta que los valores atípicos (los marcadores + en su trazado) son simplemente puntos fuera del amplio margen [(Q1-1.5 IQR), (Q3+1.5 IQR)] continuación.

Sin embargo, la imagen es solo un ejemplo para un conjunto de datos distribuidos normalmente. Es importante entender que matplotlib no estima primero una distribución normal y calcula los cuartiles a partir de los parámetros de distribución estimados como se muestra arriba.

En cambio, la mediana y los cuartiles se calculan directamente a partir de los datos. Por lo tanto, su diagrama de caja puede verse diferente según la distribución de sus datos y el tamaño de la muestra, por ejemplo, asimétrica y con más o menos valores atípicos.