Función SciPy stats.beta

Lakshay Kapoor 30 enero 2023
  1. La función scipy.stats.beta()
  2. Variable aleatoria continua beta
  3. Variables aleatorias beta y función de distribución de probabilidad
Función SciPy stats.beta

La distribución beta en estadística se define como un grupo de distribuciones de probabilidad consecutivas definidas entre el intervalo [0,1]. La distribución beta tiene dos parámetros conocidos como parámetros de forma. Estos parámetros de forma se denotan por α y β que controlan la forma de toda la distribución y representan los exponentes de una variable aleatoria.

La función scipy.stats.beta()

La función scipy.stats.beta() de la biblioteca SciPy es una variable aleatoria beta continua definida con varios parámetros de forma y un formato estándar para completar correctamente las especificaciones de la función.

Los siguientes son los parámetros de la función scipy.stats.beta.

q Define la cola superior e inferior de la probabilidad.
a, b Define los parámetros de forma de la función.
x Define los cuantiles.
loc Define el parámetro de ubicación de la función. El valor por defecto de esta función es 0.
scale El valor por defecto del parámetro scale es 1.
size Se define en forma de tupla de enteros. Define la forma de variables aleatorias.
moments Se define con una letra, es decir, msvk, where m = mean, v = variance, s = Fisher's skew y k = Fisher's kurtosis.

Todos los parámetros excepto q, a,b y x son opcionales. Eso significa que no es necesario definirlos cada vez que se usa la función scipy.stats.beta.

Hay varios métodos para definir la función scipy.stats.beta:

  • rvs(a, b, loc=0, scale=1, size=1, random_state=None)- Este método se utiliza siempre que se necesite encontrar variables aleatorias.
  • pdf(x, a, b, loc=0, scale=1)- This method is known as the probability density function
  • cdf(x, a, b, loc=0, scale=1)- This method is known as the cummulative distribution function
  • logcdf(x, a, b, loc=0, scale=1)- Este método encuentra el log de la función de distribución acumulativa.

Hay muchos más métodos de este tipo para definir la función scipy.stats.beta. Pero en cada método, el valor de los parámetros varía.

Variable aleatoria continua beta

from scipy.stats import beta

num_args = beta.numargs
[a, b] = [
    1.2,
] * num_args
random_var = beta(a, b)

print("Random Variable : ", random_var)

Producción:

Random Variable :  <scipy.stats._distn_infrastructure.rv_frozen object at 0x7f9a6b366af0>

Variables aleatorias beta y función de distribución de probabilidad

En este ejemplo, se utiliza la función arange de la biblioteca NumPy. arrayEsta es una función integrada de la biblioteca NumPy que ayuda a devolver un objeto array con un número específico de valores con un espacio definido.

import numpy as np

quantile_val = np.arange(0.1, 1, 0.2)

rv = beta.rvs(a, b, scale=2, size=10)
print("Random Variates : ", rv)

rv_pdf = beta.pdf(quantile_val, a, b, loc=0, scale=1)
print("Probability Distribution : ", rv_pdf)

Producción:

Random Variates :  [0.33734047 1.72002734 1.67064615 0.72633407 0.71346865 0.81301286
 1.39419329 0.65489343 0.97953887 1.15867132]
Probability Distribution :  [0.91029949 1.07839945 1.11666731 1.07839945 0.91029949]
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Artículo relacionado - SciPy Stats