Esempio n. 1
0
from functions import d_sample_exponential, p_value, reject

if __name__ == '__main__':
    """
    Enunciado: Calcular una aproximación del p-valor de la hipótesis: “Los
    siguientes 13 valores provienen de una distribución exponencial con media
    50”: 86, 133, 75, 22, 11, 144, 78, 122, 8, 146, 33, 41, 99.
    """
    H0 = "H0: Los siguientes 13 valores provienen de una distribución "
    H0 += "exponencial con media 50"
    text = "P-valor con Kolmogorov-Smirnov:"

    sample = [86, 133, 75, 22, 11, 144, 78, 122, 8, 146, 33, 41, 99]
    sample.sort()

    n, Iter, d = len(sample), 10000, d_sample_exponential(sample, 1 / 50)
    p_value = p_value(n, Iter, d)

    print("Estadístico: {}".format(d))
    print("===============================")
    print("{}\n{} {}".format(H0, text, p_value))
    reject(p_value)
Esempio n. 2
0
if __name__ == '__main__':
    """
    Enunciado: Decidir si los siguientes datos corresponden a una distribución
    Normal: 91.9 97.8 111.4 122.3 105.4 95.0 103.8 99.6 96.6 119.3 104.8 101.7.
    Calcular una aproximación del p-valor.
    """
    H0 = "H0: Los siguientes datos corresponden a una distribución normal"
    text = "P-valor con Kolmogorov-Smirnov:"

    sample = [
        91.9, 97.8, 111.4, 122.3, 105.4, 95.0, 103.8, 99.6, 96.6, 119.3, 104.8,
        101.7
    ]
    sample.sort()

    n, Iter = len(sample), 10000
    mu, sigma = mu_sigma_normal_estimate(sample)
    d = d_sample_normal(sample, mu, sigma)
    p_value_1 = p_value_normal(n, mu, sigma, d, Iter)
    p_value_2 = p_value(n, Iter, d)

    print("Estadístico: {}".format(d))
    print("===============================")
    print("{}\n{}".format(H0, text))
    print("Estimando parámetros en cada iteración: {}".format(p_value_1))
    reject(p_value_1)
    print("===============================")
    print("Sin estimar parámetros: {}".format(p_value_2))
    reject(p_value_2)
Esempio n. 3
0
from functions import rejection, p_value, d_value_exponential
from math import exp


if __name__ == '__main__':
    """
    Enunciado: Calcular una aproximación del p−valor de la hipótesis:
    “Los siguientes 13 valores provienen de una distribución
    exponencial con media 50”:
    86, 133, 75, 22, 11, 144, 78, 122, 8, 146, 33, 41, 99.
    """

    values = [86, 133, 75, 22, 11, 144, 78, 122, 8, 146, 33, 41, 99]
    values.sort()

    Iter = 10000

    d_1 = d_value_exponential(values, 1/50)

    print("Estadisitico: {}".format(d_1))

    n = len(values)

    p_value_1 = p_value(n, Iter, d_1)

    print("P_Value_1: {}".format(p_value_1))
    rejection(p_value_1)
Esempio n. 4
0
from functions import rejection, p_value


def d_sample(sample):
    n = len(sample)
    D1 = max([((i+1)/n) - sample[i] for i in range(n)])
    D2 = max([sample[i] - (i/n) for i in range(n)])
    return max(D1, D2)


if __name__ == '__main__':
    """
    Enunciado: Calcular una aproximación del p−valor de la hipótesis:
     “Los siguientes 10 números son aleatorios”:
     0.12, 0.18, 0.06, 0.33, 0.72, 0.83, 0.36, 0.27, 0.77, 0.74.
    """

    values = [0.12, 0.18, 0.06, 0.33, 0.72, 0.83, 0.36, 0.27, 0.77, 0.74]
    values.sort()

    D = d_sample(values)
    print("Estadisitico D: {}".format(D))

    Iter = 1000
    n = len(values)
    p_value_simulation = p_value(n, Iter, D)
    print("P-Valor simulacion: {}".format(p_value_simulation))
    rejection(p_value_simulation)