Puntos clave: NumPy proporciona diversas funciones estadísticas y distribuciones para generar muestras con fines prácticos. Las distribuciones clave incluyen Normal, Weibull, Poisson, Binomial y Uniforme, cada una adaptada a análisis estadísticos específicos.
- NumPy puede simular eventos del mundo real, como tiradas de dados o longitudes de cola.
- Las funciones estadísticas facilitan el análisis de fenómenos mediante muestreo a partir de distribuciones definidas.
NumPy soporta muchas distribuciones estadísticas. Esto significa que puede generar muestras a partir de una amplia variedad de casos de utiliza. Por ejemplo, NumPy puede ayudar a predecir estadísticamente:
- Las probabilidades de sacar un 7 (es decir, ganar) en un juego de dados
- ¿Qué probabilidad está de que alguien Obtén atropellado por un coche
- ¿Qué probabilidad es de que tu coche se averie
- ¿Cuántas personas estarán en la cola en la caja?
Lo explicamos con ejemplos.
Aleatoriedad y el trabajo real
Las funciones NumPy no calculan la probabilidad. En su lugar, extraen muestras de la distribución de probabilidad de la estadística, lo que resulta en una curva. La curva puede ser empinada y estrecha, ancha o alcanzar un valor pequeño rápidamente con el tiempo.
Su patrón varía según el tipo de estadística:
- Normal
- Weibull
- Poisson
- Binomial
- Uniforme
- Etcétera.
La mayoría de los fenómenos en el mundo real son realmente aleatorios. Por ejemplo, si descartamos la miopía, la torpeza y la ausencia, entonces la probabilidad de que alguien Obtén un coche están iguales para todas las personas.
La distribución normal refleja esto.
Cuando te utiliza la función aleatoria() en lenguajes de programación, te son diciendo que elija de la distribución normal. Las muestras tienden a quedarse alrededor de algún punto medio, conocido como media. Y la volatilidad de las observaciones están llama varianza. Como su nombre indica, si varía mucho, la varianza están grande.
Veamos estas distribuciones.
Normal
Los argumentos a favor de la distribución normal son:
- Loc están la media
- La escala está la raíz cuadrada de la varianza, es decir, la desviación estándar
- tamaño están el tamaño de la muestra o el número de ensayos. 400 significa generar 400 números aleatorios. Escribimos (400), pero podríamos haber escrito 400. Esto muestra que los valores pueden ser más de una dimensión. Aquí son simplemente eligiendo números y no ningún tipo de cubo u otra dimensión.
Weibull
Poisson
Binomial
Uniforme
import numpy as np
import matplotlib.pyplot as plt
arr = np.random.normal(loc=0,scale=1,size=(400,))
plt.plot(arr)
Observa en esto que los números se mantienen alrededor de la media, 0:
Weibull se está usando más a menudo en aplicaciones de mantenimiento preventivo. Básicamente es la tasa de fallo a lo largo del tiempo. En cuanto a máquinas como componentes de camiones, esto se está llamado Tiempo hasta el fallo. Los fabricantes publican con fines de planificación.
Una distribución de Weibull tiene un parámetro de forma y escala . Continuando con el ejemplo del camión:
- La forma está en qué tan rápido a lo largo del tiempo está probable que falle, o la inclinación de la curva.
- NumPy no requiere la distribución de escala. En su lugar, te simplemente multiplicar el valor de Weibull por la escala para determinar la distribución de la escala.
import numpy as np
import matplotlib.pyplot as plt
shape=5
arr = np.random.weibull(shape,400)
plt.hist(arr)
Este histograma muestra el recuento de observaciones únicas, o distribución de frecuencia:
Poisson están la probabilidad de que haya un número dado de personas en las filas a lo largo de un periodo de tiempo.
Por ejemplo, la longitud de una cola en un supermercado están regida por la distribución de Poisson. Si te lo sabes, entonces te puede seguir comprando hasta que la cola se acorte y no tener que esperar. Eso es porque la longitud de la cola varía, y varía mucho, con el tiempo. No es la misma longitud todo el día. Así que, ve de compras o pasea por la almacena en vez de esperar en la cola.
import matplotlib.pyplot as plt
arr = np.random.poisson(2,400)
plt.plot(arr)
Aquí Ve que la longitud de la línea varía entre 8 y 0. La función numérica no devuelve una probabilidad. Recuerda que devuelve una observación, es decir, elige un número sujeto a la cura estadística de Weibull.
Binomial están resultados discretos, como tirar dados.
Veamos el juego de craps. te tirar dos dados y te ganar cuando te Obtén un 7. te puedes Obtén un 7 con estas tiradas:
- 1,6
- 2,5
- 3,4
- 4,3
- 5,2
- 6,1
Así que son seis formas de ganar. Son 6*6*36 posibilidades. Así que la probabilidad de ganar está 6/16=1/6.
Para simular 400 tiradas de dados, utiliza:
import numpy as np
import matplotlib.pyplot as plt
arr = np.random.binomial(36,1/6,400)
plt.hist(arr)
En las pruebas de 400, se lanzaron dos 6 unas tres veces.
La distribución uniforme varía con igual probabilidad entre un rango alto y bajo.
import numpy as np
import matplotlib.pyplot as plt
arr = np.random.uniform(-1,0,1000)
plt.hist(arr)
Lecturas relacionadas
- Blog de Aprendizaje Automático y Big Data de BMC
- Guía de Visualización de Datos, una serie de tutoriales
- Explicación sobre el almacenamiento de datos: Data Lake vs Almacén vs Base de datos
- Analítica predictiva vs aprendizaje automático: ¿cuál es la diferencia?
- Principales algoritmos de aprendizaje automático y cómo Obtén
Guía de Pandas
- Introducción y tutoriales de Pandas para principiantes
- Pandas: Cómo leer archivos CSV y JSON
- Cómo Crea un Dataframe Pandas a partir de un diccionario
- Cómo agrupar, concatenar y fusionar datos en Pandas
- Tipos de datos de Pandas
- Manejo de datos faltantes en Pandas: Explicación de los valores de NaN
- Introducción de NumPy con ejemplos
- Uso de StringIO para leer archivos de texto delimitados en NumPy
- Usando la función estadística NumPy Bincount
- Funciones y distribuciones estadísticas principales de NumPy
Estas publicaciones son mías y no representan necesariamente la posición, estrategias u opinión de BMC.