Generando los numeros aleatorios

set.seed(1111)
num_aleato<- runif(100)
num_aleato
##   [1] 0.46550264 0.41292487 0.90700321 0.13710541 0.73881683 0.97632700
##   [7] 0.87995994 0.11678428 0.54628877 0.14011597 0.00169020 0.74895750
##  [13] 0.75095817 0.63340635 0.86816780 0.15936303 0.91682805 0.55700675
##  [19] 0.90041867 0.76588707 0.16441338 0.42121847 0.83911725 0.98737065
##  [25] 0.06248020 0.40557686 0.03460843 0.38555472 0.63894232 0.21639342
##  [31] 0.80617987 0.93122816 0.46791478 0.35914389 0.16790419 0.02617067
##  [37] 0.54471158 0.11346912 0.39833781 0.01833906 0.93101940 0.57396927
##  [43] 0.75098742 0.51185968 0.23618717 0.95440446 0.29188980 0.89335988
##  [49] 0.93668420 0.58188520 0.48406991 0.77819301 0.64954312 0.65284205
##  [55] 0.98742740 0.69201309 0.96028255 0.37168819 0.88886418 0.42909692
##  [61] 0.99554031 0.34840362 0.96092316 0.82150888 0.21593093 0.31646153
##  [67] 0.43000675 0.10734540 0.53772575 0.80828732 0.55058316 0.59749556
##  [73] 0.69515564 0.86200685 0.10597633 0.07243558 0.83222920 0.51812256
##  [79] 0.62094233 0.76440231 0.29417398 0.58302141 0.61622913 0.09562712
##  [85] 0.98706945 0.71095740 0.06044078 0.45310403 0.24853434 0.70752186
##  [91] 0.12792488 0.26677878 0.11498608 0.46714076 0.03976418 0.06429438
##  [97] 0.72304620 0.79980081 0.56321300 0.89010341
  1. Prueba de uniformidad chi cuadrada Se construyó un histograma con 6 intervalos.

El gráfico mostró que los datos se distribuyen de manera relativamente homogénea en todos los intervalos.

No se observaron concentraciones anormales en un rango específico.

-Conclusión: visualmente, los números siguen un patrón compatible con la distribución uniforme

hist(num_aleato, breaks=6)

2.Prueba de Corrida Se transformó la secuencia en una serie de ceros y unos según las diferencias crecientes o decrecientes.

El número de corridas calculado fue cercano al valor esperado ( 𝜇 μ).

El estadístico 𝑍 Z resultó menor que 1.96 en valor absoluto.

-Conclusión: no se rechaza la hipótesis de independencia. Los números parecen independientes entre sí.

diff(num_aleato)
##  [1] -0.052577775  0.494078348 -0.769897803  0.601711420  0.237510168
##  [6] -0.096367057 -0.763175665  0.429504495 -0.406172800 -0.138425773
## [11]  0.747267304  0.002000670 -0.117551820  0.234761446 -0.708804773
## [16]  0.757465021 -0.359821297  0.343411921 -0.134531603 -0.601473692
## [21]  0.256805099  0.417898771  0.148253409 -0.924890453  0.343096661
## [26] -0.370968431  0.350946292  0.253387599 -0.422548905  0.589786455
## [31]  0.125048287 -0.463313374 -0.108770889 -0.191239701 -0.141733527
## [36]  0.518540910 -0.431242454  0.284868687 -0.379998752  0.912680348
## [41] -0.357050130  0.177018146 -0.239127744 -0.275672511  0.718217298
## [46] -0.662514664  0.601470085  0.043324315 -0.354798996 -0.097815291
## [51]  0.294123102 -0.128649896  0.003298933  0.334585345 -0.295414307
## [56]  0.268269458 -0.588594357  0.517175989 -0.459767253  0.566443382
## [61] -0.647136682  0.612519538 -0.139414280 -0.605577949  0.100530594
## [66]  0.113545226 -0.322661359  0.430380359  0.270561563 -0.257704155
## [71]  0.046912401  0.097660082  0.166851204 -0.756030522 -0.033540745
## [76]  0.759793618 -0.314106638  0.102819773  0.143459971 -0.470228322
## [81]  0.288847422  0.033207723 -0.520602006  0.891442323 -0.276112042
## [86] -0.650516628  0.392663255 -0.204569687  0.458987516 -0.579596977
## [91]  0.138853893 -0.151792696  0.352154683 -0.427376584  0.024530205
## [96]  0.658751821  0.076754603 -0.236587804  0.326890409
S<-ifelse(diff(num_aleato) > 0, 1, 0) # secuencia de ceros y unos
S
##  [1] 0 1 0 1 1 0 0 1 0 0 1 1 0 1 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 0 0 0 1 0 1
## [39] 0 1 0 1 0 0 1 0 1 1 0 0 1 0 1 1 0 1 0 1 0 1 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 1
## [77] 0 1 1 0 1 1 0 1 0 0 1 0 1 0 1 0 1 0 1 1 1 0 1
cambios <- abs(diff(S))

# Contar las corridas
corridas <- sum(cambios) + 1
corridas
## [1] 72
mu = (2*length(num_aleato)-1)/3 # media espearada de corrida 
mu
## [1] 66.33333
varianza <- (16*length(num_aleato)-29)/90
 
Z <- (corridas-mu)/sqrt(varianza) # valor de la estadística  z
Z
## [1] 1.356316
ifelse(Z<1.96,"Los u_i son independientes","Los u_i son dependeientes")
## [1] "Los u_i son independientes"

3.Prueba Run Test La prueba de corridas formal (Runs Test) aplicada directamente a la secuencia confirmó lo mismo:

El valor p fue mayor a 0.05.

-Conclusión: los números aleatorios no presentan dependencia significativa y se comportan como independientes.

library(DescTools)
RunsTest(S)
## 
##  Runs Test for Randomness
## 
## data:  S
## z = 4.2794, runs = 72, m = 47, n = 52, p-value = 1.874e-05
## alternative hypothesis: true number of runs is not equal the expected number
  1. Prueba de Poker Se aplicó la prueba de póker con 5 dígitos decimales.

El resultado entregó frecuencias observadas de combinaciones (pares, tercia, etc.) que fueron comparadas con las frecuencias teóricas.

El p-valor fue mayor a 0.05.

library(randtoolbox)
## Cargando paquete requerido: rngWELL
## This is randtoolbox. For an overview, type 'help("randtoolbox")'.
poker.test(num_aleato,nbcard=5)
## 
##           Poker test
## 
## chisq stat = 7.1, df = 4, p-value = 0.13
## 
##       (sample size : 100)
## 
##  observed number  0 4 4 11 1 
##  expected number  0.032 1.9 9.6 7.7 0.77
  1. Prueba de Kolmogorov-Smirnov (PRUEBA K-S) Se contrastó la muestra con la distribución uniforme [ 0 , 1] [0,1].

El estadístico 𝐷 D no fue significativo.

El p-valor > 0.05.

-Conclusión: no se rechaza la hipótesis nula. Los números generados siguen una distribución uniforme en [0,1].

test_ks <- ks.test(num_aleato,"punif",0,1)
test_ks
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  num_aleato
## D = 0.08, p-value = 0.6
## alternative hypothesis: two-sided
 test_ks$p.value
## [1] 0.58
ifelse(test_ks$p.value < 0.05, " Los u_i no siguen una distribución uniforme","Los u_i siguen la distribución uniforme [0,1]") # 
## [1] "Los u_i siguen la distribución uniforme [0,1]"

Conclusión General

De acuerdo con las pruebas aplicadas:

La distribución visual y la prueba K-S confirman la uniformidad.

Las pruebas de corridas (manual y formal) validan la independencia.

La prueba de póker respalda la aleatoriedad en los dígitos.

En conjunto, los 100 números generados con runif(100) pueden considerarse aleatorios, independientes y con distribución uniforme [0,1].