Instalación

  1. Para la correcta ejecución de los archivos de este repositorio debe tener previamente instalados:

    • Firefox: descargar el instalador correspondiente a su sistema operativo de la página Instrucciones de instalación, muchas distribuciones de Linux tienen por defecto Firefox,una vez descargado el archivo abre un Terminal y ve a tu directorio de inicio:
      • cd ~
        • tar xjf firefox-*.tar.bz2, luego para iniciar Firefox, ejecuta el script firefox en la carpeta firefox:
        • ~/firefox/firefox
    • Miniconda: descargar el instalador correspondiente (python 2 o 3, 32 o 64 bits, windows, linux o mac) de la página Miniconda, y seguir las instrucciones según su sistema operativo. Para el caso de linux:
      • bash Miniconda3-latest-Linux-x86_64.sh
    • Python: para la instalación de python, usando conda, se puede seguir el siguiente comando en la terminal:
      • conda install python
    • R: usaremos conda para instalar R:
      • conda install -c r r-essentials
  2. Luego procede a la instalación usando conda, por medio de la consola, de:

    • Jupyter: conda install jupyter
    • BeautifulSoup: conda install -c anaconda beautifulsoup4 requests
    • Selenium: conda install -c conda-forge selenium
    • Gnuplot:
      • apt -y install gnuplot, y para dar soporte al uso de gnuplot en el notebook:
        • pip install --upgrade --no-cache-dir
        • git+https://github.com/has2k1/gnuplot_kernel.git@master
    • Numpy:
      • conda install numpy
  3. Clonar el repositorio:
    • git clone https://github.com/Gia37/Baloto.git

Inicialización

Una vez clonado el repositorio desde la terminal, realice los siguientes pasos:

  1. Ingrese a la carpeta donde clono el proyecto Baloto y luego a la carpeta Codigo ejecutando los siguientes códigos, respectivamente:

    • cd Baloto
    • cd Codigo
  2. Ejecute el código Descarga.py que genera los archivos Datos.md, Datos.dat y Frecuencia.dat:

    • python Descarga.py
  3. Luego se generaran los archivos Datos.md, Datos.dat y Frecuencia.dat, donde el primero muestra de forma presentable las series con sus respectivas fechas y números sorteados, el segundo, solo muestra en 6 columnas los números sorteados para su análisis y el tercero muestra 2 columnas, la primera con el número de la balota (que va desde 1 hasta 45) y la segunda con el número de veces que dicho número ha salido.

Nota:

  • Descarga.py: Se encarga de realizar la extracción de datos web ingresando a la página Historico de resultados.
  • Para la correcta ejecución de Descarga.py debe tener Firefox instalado.
  • Al ejecutarlo se abrira una ventana en Firefox donde se estaran seleccionando los años desde que se está sorteando el Baloto, es decir desde el 2001 hasta el 2016, y una vez terminado el proceso el usuario debe cerrar la ventana.

Nota acerca de Datos.dat

En este archivo se muestran en 6 columnas los números sorteados, es decir, en la primera columna se encuentran todos los números de las balotas que han salido de primeras en el historico de sorteos, en la segunda columna los números de las segundas balotas, y así hasta la sexta balota. Se pueden observar más datos de lo esperado (número de series), esto es debido a que en dicho archivo se encuentra tanto el Baloto tradicional como el Baloto revancha, siendo así que cada vez que juegue el Baloto y se actualice el archivo de Consulta.py se agregan dos sorteos a la lista.

Consulta

Utilizamos el archivo Consulta.py sólo para consultas de información básica. Este es un archivo con el cual el usuario puede consultar información acerca de los datos, en este caso, se permiten hacer cuatro tipo de consultas:

  1. Qué sorteo salió según el número de serie
  2. Qué sorteos salieron en el año ingresado
  3. Qué sorteo salió según la fecha
  4. Cuántas veces ha salido el número del sorteo

Para la ejecución de este archivo se ingresa a la carpeta donde se encuentra Baloto y una vez allí, se abre la carpeta Codigo ingresando en la terminal:

  • cd Baloto
  • cd Codigo

Y por último ejecutar:

  • python Consulta.py

In [4]:
#Ejemplo de Consulta
import Consulta as C
from IPython.display import display, Markdown
display(Markdown(C.F_Mark()))


Ingrese 1, 2, 3, o 4 segun el dato que desea consultar
1. Sorteo que salio en la serie 
2. Sorteos que han salido en el a?o 
3. Sorteos que han salido en la fecha 
4. Cuantas veces ha salido el numero  
5. SALIR
>> 2
Ingrese el a?o AAAA (2001 hasta el 2016) >> 2016
Baloto Revancha
18 - 19 - 22 - 26 - 27 - 28 10 - 14 - 28 - 34 - 35 - 39
03 - 06 - 07 - 20 - 25 - 37 09 - 11 - 13 - 31 - 34 - 40
10 - 11 - 22 - 28 - 34 - 35 01 - 23 - 25 - 36 - 42 - 45
01 - 05 - 12 - 16 - 27 - 35 01 - 16 - 17 - 20 - 23 - 44
02 - 09 - 26 - 34 - 35 - 42 02 - 17 - 20 - 21 - 42 - 44
13 - 15 - 22 - 25 - 26 - 38 19 - 22 - 28 - 33 - 38 - 45
01 - 05 - 12 - 22 - 33 - 40 03 - 05 - 15 - 17 - 33 - 42
03 - 06 - 14 - 36 - 39 - 43 15 - 18 - 22 - 33 - 42 - 45
01 - 07 - 10 - 11 - 22 - 30 12 - 17 - 29 - 33 - 34 - 36
09 - 18 - 23 - 31 - 32 - 36 01 - 16 - 26 - 29 - 31 - 32
01 - 14 - 16 - 19 - 29 - 33 08 - 09 - 14 - 19 - 27 - 34
16 - 27 - 28 - 33 - 35 - 43 03 - 08 - 29 - 32 - 34 - 44
19 - 22 - 25 - 35 - 40 - 42 06 - 17 - 24 - 25 - 39 - 42
08 - 16 - 20 - 26 - 35 - 40 03 - 09 - 14 - 27 - 38 - 44
02 - 09 - 13 - 17 - 29 - 45 17 - 19 - 29 - 33 - 38 - 43
08 - 11 - 16 - 23 - 24 - 30 01 - 02 - 04 - 29 - 30 - 33
05 - 06 - 18 - 30 - 32 - 36 03 - 04 - 05 - 19 - 27 - 29
11 - 18 - 24 - 35 - 42 - 45 01 - 05 - 23 - 32 - 37 - 38
24 - 31 - 32 - 33 - 40 - 42 06 - 10 - 13 - 27 - 28 - 44
04 - 07 - 13 - 14 - 17 - 27 05 - 17 - 21 - 27 - 34 - 37
16 - 19 - 22 - 30 - 43 - 45 05 - 06 - 08 - 22 - 23 - 38
08 - 20 - 22 - 33 - 38 - 40 24 - 25 - 27 - 35 - 42 - 43
10 - 28 - 32 - 41 - 44 - 45 11 - 24 - 31 - 36 - 38 - 39
04 - 07 - 09 - 18 - 29 - 45 03 - 20 - 26 - 29 - 31 - 36
01 - 02 - 08 - 15 - 24 - 34 05 - 11 - 20 - 39 - 41 - 44
04 - 07 - 15 - 16 - 27 - 37 15 - 27 - 29 - 30 - 34 - 35
03 - 15 - 19 - 30 - 32 - 45 03 - 09 - 15 - 26 - 34 - 44
01 - 05 - 12 - 16 - 28 - 35 01 - 05 - 21 - 26 - 34 - 44
03 - 10 - 20 - 21 - 34 - 40 03 - 30 - 31 - 36 - 42 - 43
03 - 04 - 06 - 22 - 34 - 45 12 - 18 - 20 - 33 - 38 - 43
05 - 07 - 18 - 20 - 23 - 42 17 - 31 - 32 - 33 - 37 - 42
01 - 07 - 19 - 27 - 34 - 43 05 - 09 - 19 - 31 - 32 - 37
02 - 09 - 12 - 21 - 27 - 33 04 - 13 - 24 - 26 - 32 - 37
18 - 25 - 32 - 35 - 42 - 45 10 - 18 - 33 - 38 - 42 - 44
03 - 11 - 20 - 27 - 31 - 34 01 - 15 - 16 - 27 - 30 - 36
10 - 25 - 36 - 38 - 40 - 44 28 - 36 - 38 - 39 - 40 - 44
06 - 07 - 13 - 26 - 28 - 45 09 - 14 - 23 - 27 - 30 - 41
01 - 10 - 16 - 21 - 38 - 43 14 - 18 - 20 - 22 - 34 - 37
11 - 14 - 20 - 22 - 37 - 42 06 - 15 - 22 - 23 - 36 - 39
08 - 10 - 12 - 17 - 23 - 28 12 - 18 - 19 - 20 - 26 - 28
09 - 17 - 18 - 24 - 25 - 30 08 - 26 - 32 - 37 - 39 - 44
09 - 17 - 25 - 26 - 33 - 36 08 - 18 - 21 - 25 - 31 - 34
04 - 11 - 14 - 16 - 21 - 27 07 - 13 - 22 - 34 - 44 - 45
01 - 04 - 05 - 15 - 24 - 39 02 - 10 - 25 - 27 - 34 - 45
03 - 04 - 10 - 18 - 24 - 29 08 - 15 - 19 - 33 - 35 - 36
01 - 09 - 13 - 23 - 26 - 32 10 - 13 - 14 - 19 - 38 - 41
02 - 11 - 12 - 24 - 34 - 36 07 - 24 - 28 - 31 - 32 - 37
01 - 20 - 27 - 34 - 36 - 41 04 - 19 - 33 - 34 - 39 - 43
05 - 14 - 18 - 21 - 23 - 42 01 - 05 - 25 - 30 - 33 - 44
03 - 20 - 27 - 30 - 39 - 42 14 - 16 - 28 - 31 - 32 - 39
04 - 10 - 20 - 24 - 28 - 38 01 - 11 - 25 - 32 - 41 - 42
03 - 21 - 22 - 24 - 26 - 44 02 - 13 - 14 - 22 - 42 - 44
17 - 21 - 27 - 30 - 32 - 34 14 - 23 - 28 - 29 - 35 - 36
03 - 07 - 10 - 25 - 26 - 37 02 - 17 - 20 - 22 - 23 - 29
11 - 32 - 37 - 41 - 42 - 45 01 - 08 - 18 - 19 - 31 - 42
16 - 20 - 23 - 34 - 38 - 40 09 - 13 - 19 - 29 - 31 - 45
03 - 05 - 10 - 25 - 38 - 41 03 - 22 - 27 - 34 - 38 - 40
13 - 22 - 24 - 26 - 28 - 39 17 - 21 - 31 - 32 - 38 - 41
03 - 11 - 14 - 19 - 20 - 26 01 - 03 - 25 - 32 - 33 - 36
05 - 21 - 24 - 31 - 34 - 42 11 - 16 - 20 - 36 - 37 - 43
07 - 10 - 11 - 17 - 22 - 38 12 - 20 - 21 - 29 - 31 - 42
06 - 09 - 11 - 23 - 31 - 37 01 - 08 - 14 - 18 - 34 - 42
06 - 08 - 15 - 16 - 33 - 37 02 - 03 - 12 - 25 - 31 - 40
08 - 10 - 21 - 30 - 33 - 36 04 - 05 - 10 - 17 - 20 - 40
04 - 06 - 17 - 24 - 28 - 32 10 - 16 - 25 - 35 - 44 - 45
06 - 10 - 12 - 16 - 22 - 27 04 - 07 - 16 - 22 - 33 - 38
06 - 13 - 20 - 24 - 32 - 45 02 - 04 - 05 - 10 - 27 - 42
15 - 17 - 24 - 25 - 29 - 42 02 - 16 - 21 - 23 - 30 - 37
14 - 16 - 26 - 31 - 35 - 42 01 - 04 - 06 - 24 - 36 - 43
08 - 09 - 11 - 18 - 26 - 43 04 - 06 - 31 - 36 - 37 - 41
07 - 11 - 24 - 28 - 31 - 44 02 - 16 - 17 - 22 - 23 - 42
03 - 04 - 07 - 17 - 38 - 42 01 - 06 - 27 - 31 - 33 - 38
03 - 29 - 30 - 43 - 44 - 45 05 - 22 - 30 - 33 - 40 - 45
06 - 07 - 15 - 19 - 29 - 39 05 - 06 - 12 - 25 - 34 - 43
08 - 10 - 14 - 21 - 32 - 42 18 - 20 - 27 - 33 - 36 - 40
06 - 13 - 22 - 29 - 35 - 43 03 - 18 - 21 - 31 - 43 - 45
11 - 17 - 27 - 34 - 36 - 38 05 - 22 - 24 - 30 - 35 - 43
05 - 10 - 17 - 18 - 29 - 38 03 - 21 - 29 - 30 - 34 - 44
09 - 26 - 27 - 28 - 29 - 37 14 - 16 - 26 - 30 - 33 - 41
03 - 11 - 15 - 20 - 42 - 43 05 - 10 - 13 - 18 - 19 - 37
02 - 03 - 04 - 08 - 12 - 44 01 - 03 - 04 - 15 - 16 - 22
02 - 12 - 13 - 21 - 26 - 33 03 - 15 - 28 - 30 - 34 - 43
09 - 16 - 30 - 37 - 40 - 42 06 - 08 - 22 - 24 - 28 - 44
18 - 19 - 21 - 23 - 30 - 31 01 - 03 - 14 - 17 - 23 - 45
07 - 08 - 33 - 34 - 43 - 45 12 - 20 - 26 - 33 - 44 - 45
07 - 13 - 25 - 26 - 31 - 32 10 - 14 - 20 - 34 - 38 - 45
07 - 10 - 13 - 20 - 32 - 43 12 - 13 - 14 - 15 - 27 - 44
03 - 09 - 19 - 28 - 30 - 34 03 - 07 - 11 - 12 - 43 - 45
01 - 02 - 10 - 29 - 30 - 31 08 - 10 - 12 - 16 - 19 - 28

ESTADÍSTICA Y ANÁLISIS

Estadística descriptiva básica con R

En este avance se calcula, por medio de R, la media, mínimo, máximo, la frecuencia y la desviación estandar, se seleccionaron los números de todas las balotas de los sorteos que van desde el 2001 hasta el 2016 (año actual), que se encuentran en el archivo Datos.dat, cada vez que se actualicen los datos se debe actualizar la estadística.


In [10]:
%%bash
Rscript "Estadistica_Descriptiva.R"


[1] "Media de la primera balota"
[1] 6.617791
[1] "Media de la segunda balota"
[1] 13.03177
[1] "Media de la tercera balota"
[1] 19.58944
[1] "Media de la cuarta balota"
[1] 26.13148
[1] "Media de la quinta balota"
[1] 32.64272
[1] "Media de la sexta balota"
[1] 39.4433
[1] "Desviación estandar de la primea balota"
[1] 5.302632
[1] "Desviación estandar de la segunda balota"
[1] 6.793314
[1] "Desviación estandar de la tercera balota"
[1] 7.392229
[1] "Desviación estandar de la cuarta balota"
[1] 7.495839
[1] "Desviación estandar de la quinta balota"
[1] 6.994158
[1] "Desviación estandar de la sexta balota"
[1] 5.302715
[1] "Mínimo de la primera balota"
[1] 1
[1] "Mínimo de la segunda balota"
[1] 2
[1] "Mínimo de la tercera balota"
[1] 3
[1] "Mínimo de la cuarta balota"
[1] 4
[1] "Mínimo de la quinta balota"
[1] 9
[1] "Mínimo de la sexta balota"
[1] 15
[1] "Máximo de la primera balota"
[1] 31
[1] "Máximo de la segunda balota"
[1] 37
[1] "Máximo de la tercera balota"
[1] 40
[1] "Máximo de la cuarta balota"
[1] 43
[1] "Máximo de la quinta balota"
[1] 44
[1] "Máximo de la sexta balota"
[1] 45
[1] "Las mayores frecuencias son"
[1] 300 298 293 293 289 289
[1] "Las menores frecuencias son"
[1] 238 246 247 251 252 255
[1] "La media de las frecuencias es"
[1] 272.8
[1] "Desviación estandar de las frecuencias es"
[1] 14.80418

Estadística de números

Se realiza un gráfica de la frecuencia de las balotas, es decir, cuantas veces en toda la historia del baloto han salido cada balota. Se realizó la gráfica por medio de gnuplot (Estadistica_de_numeros.png)

Estadística inferencial con Python.

Se hallan dos secuencias, una con las 6 balotas que más se repiten y la otra con las 6 balotas que menos se repiten, el numero de sorteos en las que aparecen por lo menos 3 balotas, el porcentaje que tiene cada balota en salir, la media aritmetica de las probabilidades, la desviación media, las diferencias entre la secuencia de frecuencias mayores y la secuencia de frecuencias menores, y por último la mayor y menor diferencia que hay entre la secuencia de frecuencias mayores y la secuencia de frecuencias menores.


In [11]:
%%bash
python Estadistica_Inferencial.py


Balotas que mas se repiten:  42 - 21 - 2 - 3 - 15 - 24
Balotas que menos se repiten:  34 - 38 - 12 - 32 - 39 - 23 

Las 3 balotas que mas se repiten aparece juntas en 4 sorteos de 2046 

La probabilidad de la balota 1 es: 2.13424568263 %
La probabilidad de la balota 2 es: 2.38677093516 %
La probabilidad de la balota 3 es: 2.38677093516 %
La probabilidad de la balota 4 es: 2.25643532095 %
La probabilidad de la balota 5 es: 2.26458129684 %
La probabilidad de la balota 6 es: 2.16682958618 %
La probabilidad de la balota 7 es: 2.19941348974 %
La probabilidad de la balota 8 es: 2.10980775497 %
La probabilidad de la balota 9 es: 2.32160312805 %
La probabilidad de la balota 10 es: 2.28087324862 %
La probabilidad de la balota 11 es: 2.24014336918 %
La probabilidad de la balota 12 es: 2.01205604431 %
La probabilidad de la balota 13 es: 2.12609970674 %
La probabilidad de la balota 14 es: 2.11795373086 %
La probabilidad de la balota 15 es: 2.35418703161 %
La probabilidad de la balota 16 es: 2.32974910394 %
La probabilidad de la balota 17 es: 2.18312153796 %
La probabilidad de la balota 18 es: 2.28087324862 %
La probabilidad de la balota 19 es: 2.2890192245 %
La probabilidad de la balota 20 es: 2.32974910394 %
La probabilidad de la balota 21 es: 2.4275008146 %
La probabilidad de la balota 22 es: 2.24014336918 %
La probabilidad de la balota 23 es: 2.07722385142 %
La probabilidad de la balota 24 es: 2.35418703161 %
La probabilidad de la balota 25 es: 2.07722385142 %
La probabilidad de la balota 26 es: 2.20755946562 %
La probabilidad de la balota 27 es: 2.19941348974 %
La probabilidad de la balota 28 es: 2.25643532095 %
La probabilidad de la balota 29 es: 2.29716520039 %
La probabilidad de la balota 30 es: 2.33789507983 %
La probabilidad de la balota 31 es: 2.32974910394 %
La probabilidad de la balota 32 es: 2.04463994787 %
La probabilidad de la balota 33 es: 2.24014336918 %
La probabilidad de la balota 34 es: 1.93874226132 %
La probabilidad de la balota 35 es: 2.27272727273 %
La probabilidad de la balota 36 es: 2.15053763441 %
La probabilidad de la balota 37 es: 2.08536982731 %
La probabilidad de la balota 38 es: 2.00391006843 %
La probabilidad de la balota 39 es: 2.05278592375 %
La probabilidad de la balota 40 es: 2.29716520039 %
La probabilidad de la balota 41 es: 2.08536982731 %
La probabilidad de la balota 42 es: 2.44379276637 %
La probabilidad de la balota 43 es: 2.29716520039 %
La probabilidad de la balota 44 es: 2.26458129684 %
La probabilidad de la balota 45 es: 2.24828934506 %

La media aritmetica de las probabilidades es:  2.22222222222
La desviacion media es:  0.0999963795663

Las diferencias entre el sorteo de mayor frecuencia con la menor es [62, 54, 53, 49, 48, 45, 60, 52, 51, 47, 46, 43, 55, 47, 46, 42, 41, 38, 55, 47, 46, 42, 41, 38, 51, 43, 42, 38, 37, 34, 51, 43, 42, 38, 37, 34]
La mayor diferencia: 62 y la menor diferencia: 34