Medidas de posición no central en Python
Siguiendo con es esquema de trabajo iniciado con las medidas de posición central, después de ver cómo calcular medidas de posición no central manualmente y mediante las funciones Calc, vamos a ver ahora cómo calcularlas empleando Python.
Invertimos el orden del contenido y empezamos en esta ocasión por el cálculo del mínimo y del máximo, ya que no para ello no necesitamos más que los datos sobre los que trabajar (repetimos los usados en la entrada correspondiente)...
datos = [1,1,3,4,4,4,5,5,6,7,7,9]
... y utilizar directamente las funciones min(datos) y max(datos) para obtener los mismos resultados que ya conocemos y que ahora visualizamos con la función print().
El script que desarrolla lo anterior que queda disponible [en este enlace]. Aquí no le voy a conceder más espacio.
El cálculo de cuantiles presenta otras condiciones, empezando por precisar el uso de una biblioteca específica, aunque puede ser la biblioteca integrada en el lenguaje que ya conocemos [de otra entrada]: stadistics. Este sería el script que reproduce lo visto en Calc en una [entrada anterior]. Pormenorizo las secciones para facilitar la comparación y la comprensión del script.
import statistics as stdatos = [1,1, 1,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6]# Calculo de cuartilescuartil = st.quantiles(datos, n=4)# Primer cuartilq1 = cuartil[0]#Segundo cuartilq2 = cuartil[1]#Tercer cuartilq3 = cuartil[2]print("Cuartil 1 -> " + str(q1))print("Cuartil 2 -> " + str(q2))print("Cuartil 3 -> " + str(q3))#Cálculo de decilesdecil = st.quantiles(datos, n=10)#Segundo decild2 = decil[2]#Cuarto decild4 = decil[4]print("Segundo decil -> " + str(d2))print("Cuarto decil -> " + str(d4))#Cálculo de percentilespercentil = st.quantiles(datos, n=100)#Percentil 12p12 = percentil[12]#Percentil 85p85 = percentil[85]print("Percentil 12 -> " + str(p12))print("Percentil 85 -> " + str(p85))
Fundamental importar en primer lugar la biblioteca stadistics (import statistics as st) y disponer, al menos, de una lista (en este caso datos = []; omito contenido).
El cálculo u obtención de un valor cuantil se basa en el uso de la función quantiles() del paquete stadistics (st.quantiles()), la cual recibe dos parámetros (st.quantiles(datos, n=4)):
- El conjunto de datos (lista datos en nuestro caso)
- Y un valor numérico asociado a n (en el ejemplo n=4), que expresa el número de partes en las que la función va a dividir a la colección o lista de datos.
En la primera parte del script deseamos calcular cuartiles, por lo que n = 4. Después, cuando deseamos obtener un cuartil en concreto, lo que hacemos es indicarlo por medio de un valor numérico que indica la posición de esa parte. Por ejemplo, si (cuartil = st.quantiles(datos, n=4)), para obtener el cuartil 1 pediremos (q1 = cuartil[0]); y para pedir el tercer cuartil (q3 = cuartil[2]).
Si lo que deseamos es obtener deciles, dividiremos el conjunto en 10 partes (decil = st.quantiles(datos, n=10)) y si precisamos calcular percentiles en 100 (percentil = st.quantiles(datos, n=100)).
Te dejo en [este enlace] acceso al script.

