FACULTAD DE CIENCIAS
TRABAJO FIN DE GRADO
G ado en Es adís ica
Aplicaciones Shiny como he amien a pa a la
Es adís ica en Enseñanzas Medias
Au o a:
Elia Muñoz Alonso
Tu o a:
Te esa González A eaga
2
3
INDICE
INDICE ...................................................................................................................................... 3
RESUMEN ................................................................................................................................. 4
ABSTRACT ................................................................................................................................. 4
1. INTRODUCCIÓN ................................................................................................................. 5
2. CONTENIDOS DE ESTADISTICA EN LAS ENSEÑANZAS MEDIAS ................................................ 7
2.1 Con enidos de Es adís ica en las Ma emá icas de la Educación Secunda ia Obliga o ia .................. 8
2.2 Con enidos de Es adís ica en las Ma emá icas de Bachille a o ..................................................... 12
3. HERRAMIENTAS UTILIZADAS: R, RSTUDIO Y SHINY ............................................................... 16
3.1 R ................................................................................................................................................ 16
3.2 RS udio ....................................................................................................................................... 17
3.3 Shiny .......................................................................................................................................... 18
4. APLICACIONES SHINY PARA EL APOYO A LA ENSEÑANZA DE LA ESTADÍSTICA ....................... 23
4.1 Aplicación Shiny Desc ipción Uni a ian e.................................................................................... 23
4.2 Aplicación Shiny Desc ipción Bi a ian e ....................................................................................... 30
4.3 Aplicación Shiny P obabilidad ..................................................................................................... 35
5. EJEMPLOS PRÁCTICOS ......................................................................................................... 45
6. CONCLUSIONES ................................................................................................................... 47
Apéndice A: Código Aplicación Shiny Desc ipción Uni a ian e .................................................. 48
Apéndice B: Código Aplicación Shiny Desc ipción Bi a ian e .................................................... 59
Apéndice C: Código Aplicación Shiny P obabilidad ................................................................... 78
BIBLIOGRAFIA Y/O REFERENCIAS ............................................................................................. 86
FIGURAS ................................................................................................................................. 89
TABLAS ................................................................................................................................... 90
4
RESUMEN
La Es adís ica posee un papel p imo dial en el desa ollo de la sociedad ac ual. Po ello,
la enseñanza de la Es adís ica ha enido adqui iendo un mayo elie e en los cu ículos
de Ma emá icas del que se p esen aba adicionalmen e en las Enseñanzas Medias.
U iliza una he amien a in o má ica como apoyo pa a el es udio de es a pa e de las
ma e ias de Ma emá icas ayuda a mejo a el ap endizaje, mo i a a los alumnos,
aumen a su in e és e inci a los a que se sien an a aídos po es a ciencia.
En el p esen e abajo se o ecen una se ie de aplicaciones web in e ac i as,
desa olladas con el paque e es adís ico R y especí icamen e Shiny. Es as aplicaciones
ecogen los con enidos de Es adís ica incluidos en las ma e ias de Ma emá icas en las
Enseñanzas Medias. Además, se desc ibe su uso de mane a de allada pa a acili a el
manejo de es as aplicaciones a oda la comunidad educa i a.
Palab as cla e:
R, Shiny, Ma emá icas, Es adís ica, Enseñanzas Medias, Aplicaciones Web
_______________________________________________________________________
ABSTRACT
S a is ics plays a undamen al ole in he de elopmen o oday's socie y. Fo his
eason, he eaching o S a is ics has acqui ed a g ea e p ominence in he
Ma hema ics cu icula han was adi ionally he case. Using a compu e ool o he
s udy o his pa o he Ma hema ics subjec s helps o imp o e lea ning, o mo i a e
s uden s and o inc ease hei in e es and i encou ages hem o eel a ac ed by his
science.
The p esen disse a ion o e s se e al in e ac i e web applica ions de eloped wi h he
s a is ical package R, speci ically wi h Shiny. They co e he con en s o S a is ics
included in he subjec s o Ma hema ics in Seconda y Educa ion. In addi ion, a de ailed
desc ip ion o how hose applica ions a e used is p esen ed. This pa acili a es he
handling o hese apllica ions o he en i e educa inal communi y.
Keywo ds:
R, Shiny, Ma hema ics, S a is ics, Middle School, Web Applica ion
5
1. INTRODUCCIÓN
La mayo ía de las eces y a lo la go del iempo como dije a Hun sbe ge : "La palab a
es adís ica a menudo nos ae a la men e imágenes de núme os apilados en g andes
a eglos y ablas, de olúmenes de ci as ela i as a nacimien os, mue es, impues os,
poblaciones, ing esos, deudas, c édi os y así sucesi amen e”. Pa a la mayo ía de la
gen e Hun sbe ge iene azón pues al momen o de escucha es a palab a es as son las
imágenes que llegan a su cabeza.
La Es adís ica es mucho más que solo núme os apilados y g á icos boni os. La
Es adís ica es una ciencia muy ú il e in luyen e en la mayo ía de los campos del
conocimien o. Hoy en día su aplicación se ha con e ido en imp escindible en
múl iples ámbi os de la ida cien í ica y co idiana. Un cla o ejemplo de es e
p o agonismo es la ecu en e apa ición en campos an di e sos como la Medicina, la
A qui ec u a, la in es igación de me cados, la Me eo ología, la Biología, la Polí ica…
La ausencia de la Es adís ica conlle a ía a un caos gene alizado, dejando a las
emp esas y a la sociedad sin in o mación i al a la ho a de oma decisiones.
La posesión de conocimien os de Es adís ica es un buen ehículo pa a alcanza las
capacidades de comunicación, a amien o de la in o mación, esolución de
p oblemas, compe encia digi al y abajo coope a i o y en g upo a las que se da g an
impo ancia en los cu ículos ac ualmen e igen es en Enseñanzas Medias. Las
aplicaciones es adís icas p opo cionan una buena opo unidad de mos a a los
es udian es la u ilidad de las Ma emá icas pa a en ende la ealidad que nos odea.
Con la en ada en igo de la LOMCE ha aumen ado la ca ga de Es adís ica en las
ma e ias de Ma emá icas de las Enseñanzas Medias. Además, los p o eso es de es as
ma e ias han mos ado mayo in e és en el uso de he amien as in o má icas que
ayuden a soluciona p oblemas semejan es a los de la ida eal. Es o sus en a la
opo unidad pa a desa olla los ecu sos docen es que se o ecen en es e abajo in
de g ado.
El obje i o del p esen e abajo in de g ado es desa olla y p esen a aplicaciones
web in e ac i as. Es as aplicaciones ecogen pa e de los con enidos de Es adís ica
es udiados en la Educación Secunda ia Obliga o ia y el Bachille a o y ponen al alcance
de sus es udian es he amien as sencillas pa a en ena su capacidad es adís ica.
Es as aplicaciones web in e ac i as se han c eado con el paque e Shiny de R. Es e
paque e combina el pode compu acional de R con la in e ac i idad de la web
mode na.
R es un so wa e es adís ico lib e que se ha popula izado en el úl imo iempo. Es o ha
con ibuido en el desa ollo de in e aces de usua io como RS udio o complemen os
que ha inco po ado en su eposi o io como el paque e u ilizado en es e TFG, Shiny.
Es e TFG apo a las aplicaciones web Desc ipción Uni a ian e, Desc ipción Bi a ian e y
P obabilidad desa olladas con Shiny como ecu so docen e pa a la enseñanza de
Es adís ica en dichos ni eles de la educación. Además, se explican y se mues an es as
aplicaciones pa a acili a su comp ensión.
6
A pa e de odo lo an e io , el abajo incluye es ideos g abados pa a mos a los
ejemplos p ác icos pos e io es sob e el uso de las aplicaciones c eadas. Pa a la
ealización de es os ideos se u ilizan los siguien es iche os de da os
EjemploSencillo1. x , EjemploSencillo2. x , Fu bolSpain. x y C ohnD.cs .
A lo la go de es e abajo encon a emos las siguien es secciones. La Sección 2 hace
e e encia a los con enidos de Es adís ica ecogidos en los cu ículos de Educación
Secunda ia Obliga o ia y de Bachille a o. En la Sección 3 se ealiza una b e e
in oducción a las he amien as R y RS udio explicando sus ca ac e ís icas más
globales. Además se ealiza una desc ipción gene al sob e el paque e Shiny. En la
Sección 4 se explican las es aplicaciones desa olladas con Shiny. Después, en la
Sección 5 se p esen an una se ie de ejemplos p ác icos de uso de las aplicaciones
desa olladas. En la Sección 6 con iene las conclusiones del abajo. Po úl imo, en los
apéndices se incluye el código p og amado pa a las es aplicaciones desa olladas.
7
2. CONTENIDOS DE ESTADISTICA EN LAS ENSEÑANZAS MEDIAS
Las asigna u as de Ma emá icas es udiadas an o en la Educación Secunda ia
Obliga o ia, ESO, y el Bachille a o ecogen la pa e de Es adís ica impa ida en es as
e apas educa i as.
El cu ículo de es as asigna u as es egulado po las siguien es no ma i as, an o
es a ales como au onómicas:
- LEY ORGANICA 8/2013, de 9 de diciemb e, pa a la Mejo a de la Calidad
Educa i a publicada en el Bole ín O icial del Es ado (BOE) núme o 295 el 10 de
diciemb e de 2013.
- REAL DECRETO 1105/2014, de 26 de diciemb e, po el que se es ablece el
cu ículo básico de la Educación Secunda ia Obliga o ia y del Bachille a o
publicado en el BOE núme o 3 el 3 de ene o de 2015.
- CORRECCIÓN de e o es del Real Dec e o 1105/2014, de 26 de diciemb e, po
el que se es ablece el cu ículo básico de la Educación Secunda ia Obliga o ia y
del Bachille a o publicado en el BOE núme o 104 el 1 de mayo de 2015.
- ORDEN ECD/65/2015, de 21 de ene o, po la que se desc iben las elaciones
en e las compe encias, los con enidos y los c i e ios de e aluación de la
Educación P ima ia, la Educación Secunda ia Obliga o ia y de Bachille a o
publicado en el BOE núme o 25 el 29 de ene o de 2015.
- REAL DECRETO 310/2016, de 29 de julio, po el que se egulan las e aluaciones
inales de Educación Secunda ia Obliga o ia y de Bachille a o publicado en el
BOE núme o 183 el 30 de julio de 2016.
- ORDEN EDU/362/2015, de 4 de mayo, po la que desa olla el cu ículo
co espondien e a la Educación Secunda ia Obliga o ia y egula su
implan ación, e aluación y desa ollo en la Comunidad de Cas illa y León
publicada en el Bole ín O icial de Cas illa y León (BOCYL) nume o 86 el 8 de
mayo de 2015.
Los con enidos de Es adís ica es udiados en Educación Secunda ia Obliga o ia (ESO) se
encuen an den o de las asigna u as llamadas Ma emá icas en los dos p ime os
cu sos mien as que en los dos úl imos se da la opción de elegi en e Ma emá icas
o ien adas a las enseñanzas académicas y Ma emá icas o ien adas a las enseñanzas
aplicadas.
Los con enidos de Es adís ica incluidos en Bachille a o se encuen an ecogidos den o
de las asigna u as de Ma emá icas aplicadas a las Ciencias Sociales I y II pa a los dos
cu sos de la modalidad de Ciencias Sociales y Ma emá icas I y II pa a los cu sos de la
modalidad de Ciencias.
8
2.1 Con enidos de Es adís ica en las Ma emá icas de la Educación
Secunda ia Obliga o ia
El cu ículo de Ma emá icas en ESO di ide es as asigna u as en cinco bloques:
- Bloque I: P ocesos, mé odos y ac i udes en ma emá icas
- Bloque II: Núme os y Álgeb a
- Bloque III: Geome ía
- Bloque IV: Funciones
- Bloque V: Es adís ica y p obabilidad
Los con enidos de Es adís ica se encuen an den o del úl imo bloque. Po lo an o, en
el p esen e TFG, conside a emos los con enidos del bloque Es adís ica y P obabilidad.
En el p ime cu so, los con enidos ecogidos en el bloque V son:
- Población e indi iduo. Mues a.
- Va iables es adís icas. Va iables cuali a i as y cuan i a i as disc e as.
- F ecuencias absolu as y ela i as.
- O ganización en ablas de da os ecogidos en una expe iencia.
- Diag amas de ba as y de sec o es. Polígonos de ecuencias.
- Medidas de endencia cen al.
- Fenómenos de e minis as y alea o ios.
- Fo mulación de conje u as sob e el compo amien o de enómenos alea o ios
sencillos y diseño de expe iencias pa a su comp obación.
- F ecuencia ela i a de un suceso y su ap oximación a la p obabilidad median e
simulación o expe imen ación.
- Sucesos elemen ales equip obables.
- Espacio mues al en expe imen os sencillos.
En el bloque V de la asigna u a Ma emá icas del segundo cu so, sus con enidos son:
- Población e indi iduo. Mues a.
- Va iables es adís icas. Va iables cuali a i as y cuan i a i as disc e as y
con inuas.
- F ecuencias absolu as y ela i as.
- O ganización en ablas de da os ecogidos en una expe iencia.
- Diag amas de sec o es, de ba as, his og amas y polígonos de ecuencias.
O os g á icos es adís icos p o enien es de los medios de comunicación.
- Medidas de endencia cen al.
- Medidas de dispe sión.
- Iniciación a la hoja de cálculo.
- Fenómenos de e minis as y alea o ios.
9
- Fo mulación de conje u as sob e el compo amien o de enómenos alea o ios
sencillos y diseño de expe iencias pa a su comp obación.
- F ecuencia ela i a de un suceso y su ap oximación a la p obabilidad median e
simulación o expe imen ación.
- Sucesos elemen ales equip obables y no equip obables.
- Espacio mues al en expe imen os sencillos. Tablas y diag amas de á bol
sencillos.
- Cálculo de p obabilidades median e la egla de Laplace en expe imen os
sencillos.
En e ce y cua o cu so se da la opción de elegi en e dos ipos de Ma emá icas. Las
Ma emá icas o ien adas a las enseñanzas académicas donde se o alecen an o los
aspec os eó icos como las aplicaciones p ác icas en casos eales y las Ma emá icas
o ien adas a las enseñanzas aplicadas que hacen mayo hincapié en la aplicación de
los con enidos en con ex os eales.
En las Ma emá icas o ien adas a las enseñanzas académicas del e ce cu so se
ecogen los con enidos del bloque V:
- Fases y a eas de un es udio es adís ico. Población, mues a.
- Va iables es adís icas: cuali a i as, cuan i a i as disc e as y con inuas.
- Mé odos de selección de una mues a es adís ica.
- Rep esen a i idad de una mues a.
- F ecuencias absolu as, ela i as y acumuladas. Ag upación de da os en
in e alos.
- G a icas es adís icas.
- Pa áme os de posición cen al y no cen al.
- Calculo, in e p e ación y p opiedades.
- Pa áme os de dispe sión.
- Diag ama de cajas y bigo es.
- In e p e ación conjun a de la media y la des iación ípica.
- U ilización de los medios ecnológicos adecuados pa a el análisis y la
p oducción de in o mación es adís ica.
- Uso de la calculado a cien í ica, de la hoja de cálculo y de o os p og amas pa a
hace ep esen aciones g a icas y calcula pa áme os.
- Expe iencias alea o ias simples y compues as en casos sencillos.
- Sucesos y espacio mues al.
- Cálculo de p obabilidades median e la egla de Laplace.
- Diag amas de á bol sencillos y ablas. Regla del p oduc o pa a con a casos.
- U ilización de la p obabilidad pa a oma decisiones undamen ales en
di e en es con ex os.
- U ilización de dis in os p og amas pa a simula expe imen os alea o ios.
16
3. HERRAMIENTAS UTILIZADAS: R, RSTUDIO Y SHINY
Las aplicaciones web dinámicas apo adas en el p esen e abajo in de g ado se
desa ollan po medio del p og ama R, con su en o no de desa ollo in eg ado RS udio
y su paque e Shiny. Las e siones u ilizadas pa a la p og amación hecha en es e TFG
son R 3.5.3, RS udio 1.1.463 y Shiny 1.2.0.
3.1 R
R es el lenguaje, en o no, de p og amación más usado en la comunidad cien í ica pa a
compu ación es adís ica y g á icos bajo Licencia Publica Gene al de GNU. R es un
p oduc o de código lib e en el sen ido mas ampliamen e posible, ambién incluido en
la iloso ía Open Sou ce.
R es á basado en el lenguaje S, desa ollado po Bell Labo a o ies de AT&T R. A pa i
de S Robe Gen leman y Ross Ihaka de la Uni e sidad de Auckland lo eimplemen an
en 1993. Ac ualmen e, R es una he amien a es adís ica muy pode osa, es able,
con iable y en cons an e ac ualización.
Es e so wa e cuen a con cie as en ajas pa a su uso gene alizado pa a el análisis de
da os:
- Código y desca ga lib e y po an o no hay que paga pa a adqui i lo
- Técnicas es adís icas básicas, a anzadas y obus as
- G á icos de al a calidad expo ables
- G an can idad de in o mación sob e sus unciones y paque es
- Disponibilidad pa a odos los sis emas ope a i os
- Capacidad de abaja con o os lenguajes
- C eación de aplicaciones web in e ac i as con el paque e Shiny,
he amien a en la que nos cen a emos en el p esen e TFG
- Disponibilidad de miles de paque es que ex ienden sus unciones básicas
En las Enseñanzas Medias el p esupues o pa a he amien as in o má icas es educido.
Po lo an o, el aspec o económico es una en aja a esal a pa a u iliza R en la
Es adís ica incluida en las asigna u as de es as enseñanzas.
La ins alación de R es muy simple. En su web h ps://www. -p ojec .o g/, Figu a 1,
bas a con selecciona la opción “Download CRAN”. En la página que se ab e a
con inuación hay que escoge el “mi o ” de desca ga y la e sión que co esponde al
sis ema ope a i o deseado (Windows, Mac OS o Linux). Es án disponibles “mi o s” en
dis in os países, po lo an o, es con enien e elegi un “mi o ” de una localización
ce cana.
17
Figu a 1: Pagina web p incipal de desca ga R
En el TFG “R como he amien a de apoyo a la enseñanza de Es adís ica en
Bachille a o” (Re uel a, 2017) se explica de alladamen e cómo ealiza la ins alación
de R y sus paque es.
3.2 RS udio
RS udio es un en o no de desa ollo in eg ado (IDE) pa a R, que al igual que és e es
so wa e lib e. Es á o mado po una consola de ejecución, un edi o de ex o que
acep a la ejecución di ec a y he amien as pa a la adminis ación del á ea de abajo.
El obje i o es dispone de una he amien a po en e que sea sencilla e in ui i a pa a
c ea un en o no “use iendly” pa a sus usua ios, pe o que a su ez sopo e los
a amien os eque idos pa a ealiza análisis de calidad y dignos de con ianza.
Una ez ins alado R (R-p ojec ), se puede ins ala RS udio. La ins alación de RS udio se
consigue desde la página o icial del p og ama h ps://www. s udio.com/
seleccionando “Download now” y a con inuación “Download RS udio Desk op”. Elegi
la e sión del sis ema ope a i o adecuada y segui las ins ucciones de ins alación.
18
Figu a 2: Ven ana p incipal RS udio
Como se mues a en la Figu a 2, RS udio es un en o no muy o ganizado ya que
podemos obse a al iempo el edi o de código uen e (Sc ip ), el espacio de abajo
(Consola), los obje os almacenados en memo ia (En o no global) y el di ec o io de
abajo, los g á icos que se gene an, los paque es pa a ca ga los e ins ala los
di ec amen e, la ayuda y un iso HTML en la en ana in e io izquie da.
Un aspec o a señala es que RS udio no posee e sión en cas ellano. Es o puede se
is o como un incon enien e pa a su uso en las Enseñanzas Medias.
3.3 Shiny
El so wa e es adís ico R cuen a desde 2012 en el eposi o io CRAN de la página web
del p oyec o R con un paque e llamado Shiny. Shiny pe mi e la cons ucción de
aplicaciones web in e ac i as (apps) di ec amen e desde R con un ma co web elegan e
y pode oso sin necesidad de con a con conocimien os de HTML, CSS o Ja a Sc ip .
La ins alación de es e paque e es simila a la del es o de paque es de R. Se puede
ealiza a a és de los menús de RS udio o ejecu a la siguien e o den en la consola
ins all.packages(“Shiny”, dependencies = T). Pa a más in o mación sob e la ins alación
de paque es se puede isi a “R como he amien a de apoyo a la enseñanza de
Es adís ica en Bachille a o” (Re uel a, 2017).
Las aplicaciones web pueden ene un papel undamen al no solo en el ámbi o
docen e sino ambién en el p o esional o en in es igación.
En las subsecciones siguien es se in oducen b e emen e los elemen os
undamen ales pa a en ende las aplicaciones Shiny.
19
3.3.1 Es uc u a y uncionamien o de una aplicación Shiny
Cada aplicación Shiny se compone de dos pa es: una página web que mues a la
aplicación al usua io y un o denado o se ido que la alimen a. El desa ollado de
una aplicación Shiny esc ibe la in e az de usua io, llamada UI en Shiny, y el código que
alimen a la aplicación, llamado SERVER en Shiny.
El uncionamien o de las aplicaciones web desa olladas con Shiny es de la misma
o ma que o as aplicaciones web, con la en aja de que R y Shiny gene an el código
HTML que mues a los elemen os en la página web y o ece un modelo de in e acción
en e los componen es in e ac i o y dinámico.
Las aplicaciones desa olladas con es a ecnología se pueden p esen a de dos o mas.
La p ime a es con un único a chi o app.R que eúna odo el código en un solo sc ip y
la segunda es c eando dos a chi os, ui.R y se e .R, que sepa en la pa e clien e de la
pa e se ido a. Si es án en un único sc ip se encuen an las siguien es pa es
di e enciadas en el código:
ui: ins ucciones que desc iben la in e az de usua io. Es deci , con ola el
diseño y aspec o de la aplicación median e una se ie de comandos.
se e : ins ucciones de los componen es de R que se necesi an pa a cons ui
los cálculos y g á icos necesa ios.
ShinyApp: c ea los obje os de la aplicación Shiny. Solo es necesa io cuando se
c ea un único a chi o app.R
Pa a el uncionamien o de es as aplicaciones Shiny podemos dis ingui los siguien es
pasos:
A con inuación se an a desc ibi algunos elemen os cla es pa a en ende las
aplicaciones Shiny: P og amación eac i a, Widge s, cons ucción de in e az y salida
eac i a.
P og amación eac i a
Shiny es á basado en la p og amación eac i a, es deci , enlaza los alo es de en ada y
los de salida.
Cuando una en ada cambia, el se ido econs uye cada salida que depende de ella
di ec a o indi ec amen e.
En es e ipo de p og amación des aca el uso de alo es que cambian con el iempo y
exp esiones que egis an esos cambios.
In e acción en e
widge s y usua io
en el na egado
Modi ica calculos
de R con el alo
ac ual de los
widge s
Mos a en el
na egado los
esul ados ob enidos
20
Widge s
Un widge es un elemen o web con el que el usua io puede in e ac ua en iando
mensajes a la aplicación Shiny.
Shiny dispone de un conjun o de widge s p e-cons uidos, se pueden e en la Figu a 3
y Tabla 1. El usua io in e ac úa con el widge pa a modi ica los alo es que oma la
aplicación Shiny al e alua los cálculos, y po lo an o, econs ui la solución a mos a .
En la p og amación de los widge s se u ilizan unciones widge . El p ime a gumen o
de cada unción widge es el <nomb e> del widge . Se puede accede a su alo ac ual
en la unción se e con inpu $<nomb e>.
Figu a 3: Widge s básicos de Shiny
Widge
Función
A gumen os comunes
Bo ón de acción
ac ionBu on
inpu Id, label
Casilla
checkboxInpu
inpu Id, label, alue
G upo de casillas
checkboxG oupInpu
inpu Id, label, choices,
selec ed
Selección de echas
da eInpu
Inpu Id, label, alue, min,
max, o ma
Selección ango de echas
da eRangeInpu
inpu Id, label, s a , end,
min, max, o ma
Subi a chi o
ileInpu
inpu Id, label mul iple
Campo numé ico
nume icInpu
inpu Id, label, alue, min,
max, s ep
Bo ón de selección
adioBu ons
inpu Id, label, choices,
selec ed
Casilla de selección
selec Inpu
inpu Id, label, choices,
sleec ed, mul iple
Deslizado
slide Inpu
inpu Id, label, min, max,
alue, s ep
Bo ón de en ío
submi Bu on
ex
Campo de ex o
ex Inpu
inpu Id, label, alue
Tabla 1: Widge básicos de Shiny
21
Cons ucción de in e az
Pa a empeza a c ea una aplicación Shiny se c ea un nue o di ec o io en el que se
gua da den o un a chi o app.R que con iene ui y se e . Se ecomienda que cada
aplicación i a en su p opio di ec o io único.
Pa a c ea una p ime a aplicación el mínimo código posible que se necesi a debe
co esponde se con el sc ip de la Figu a 4:
Figu a 4: Aplicación Shiny mínima
A pa i de la aplicación mínima que se mues a en la Figu a 4 se i án añadiendo
elemen os has a llega a la aplicación inal que se desea. Algunos de los elemen os
básicos son:
- Función luidPage: c ea en ana que se ajus a au omá icamen e a las
dimensiones de la pan alla
o i lePanel: panel de í ulos
o side ba Layou : siemp e oma los siguien es dos a gumen os
sideba Panel: ba a la e al
mainPanel: panel p incipal
o Widge s
- Con enido HTML: median e unciones Shiny pa alelas a las e ique as HTML5
comunes se añaden pá a os, encabezados, o ma os de ex o e imágenes
en e o os.
Salida eac i a
Pa a ob ene una salida eac i a necesi amos un indicado o “ eac i o” que haga que
la salida depende de o a exp esión. Es o es, cuando una en ada del usua io cambia,
la aplicación enue a los cálculos ealizados con esa en ada y po consiguien e
p oduce una salida nue a.
22
Pa a c ea es as salidas eac i as se necesi an dos pasos:
- Ag ega un obje o R a la in e az de usua io. Shiny cuen a con unciones que
modi ican los obje os R en salida pa a su in e az.
- P opo ciona el código R pa a cons ui el obje o p opiamen e dicho. Es e
código pa a o ma el obje o debe especi ica el alo de un widge pa a que
sea eac i o.
3.3.2 Compa i aplicaciones Shiny
Una ez c eada una aplicación Shiny es a se puede compa i con o os usua ios de las
dos o mas siguien es:
- Como R sc ip s: solo unciona cuando el usua io cuen a con el so wa e R. Se
inicia la aplicación desde la sesión de R del usua io y se ejecu a con el bo ón
o ejecu ando la siguien e o den en consola
lib a y(shiny); unApp('app.R’) si nues a aplicación se gua da en el ihce o app.
R.
- Como una página web: los usua ios pueden accede como un na egado web
po la aplicación a a és de in e ne . Es o equie e que la aplicación Shiny
especí ica es é disponible en un se ido público.
En es e TFG compa i emos las aplicaciones Shiny c eadas de la p ime a o ma que se
ha desc i o. Además de los sc ip s que con ienen el código de las aplicaciones Shiny, se
compa i án a ios iche os de da os que si en pa a ealiza ejemplos p ác icos y se
u iliza án en la Sección 5.
23
4. APLICACIONES SHINY PARA EL APOYO A LA ENSEÑANZA DE LA
ESTADÍSTICA
Pa a elabo a es as aplicaciones, en es e TFG, se ha enido en cuen a que los
con enidos de Es adís ica enume ados en la Sección 2.
- Es adís ico y g á icos que u ilizan una sola a iable pa a los cuales se ha
desa ollado la aplicación Shiny Desc ipción Uni a ian e.
- Es adís icos y g á icos que emplean dos a iables pa a los cuales se ha
desa ollado la aplicación Shiny Desc ipción Bi a ian e.
- Los con enidos de p obabilidad en la aplicación Shiny P obabilidad.
En es a sección se explica a de alladamen e cómo ope a y la es uc u a de cada una
de las aplicaciones Shiny desa olladas.
4.1 Aplicación Shiny Desc ipción Uni a ian e
La es adís ica desc ip i a uni a ian e se cen a en la clasi icación, p esen ación,
desc ipción y análisis de una única a iable. Pa a ello se u ilizan ablas, g á icos y
es adís icos esumen.
La aplicación desa ollada con Shiny pa a la desc ipción de una a iable se llama
Desc ipción Uni a ian e y se ejecu a en RS udio con el iche o “UnaVa iable.R”
esc ibiendo la o den lib a y(shiny); unApp(‘UnaVa iable.R’) en consola. El código del
sc ip UnaVa iable.R se encuen a en el Apéndice A.
Es a aplicación es á di idida en las 5 secciones o en anas que se mues an en la
Figu a 5.
Figu a 5: Encabezado Aplicación Shiny Desc ipción Uni a ian e
Se a a pasa a desc ibi de alladamen e la es uc u a y los con enidos que se ecogen
en cada una de las en anas.
24
Elección de a chi o
Figu a 6: Aplicación Shiny Desc ipción Uni a ian e, Ven ana elección a chi o
Es a en ana si e pa a ca ga el iche o de da os donde se encuen e la a iable a
analiza .
Los da os deben es a en un iche o de da os ex e no. Al selecciona la opción “Busca
iche o” se ab e el explo a de a chi os y se busca el iche o deseado.
En la pa e izquie da de la pan alla se con igu a la lec u a del a chi o de da os. P ime o
se selecciona el a chi o al ab i se el explo ado del o denado . Después se comple a la
en ana pa a que la lec u a de los da os sea co ec a, e Figu a 7.
Figu a 7: Selección de da os ex e nos
Es a aplicación lee iche os con ex ensiones . x y .cs .
Una ez seleccionado el a chi o, la siguien e subsección, Figu a 8, nos indica si el
a chi o con iene en la p ime a ila el nomb e de cada a iable. Dependiendo si la
con iene o no debe ma ca se, espec i amen e, el bo ón de Sí o el bo ón de No. Po
de ec o es á ma cado Sí.
25
Figu a 8: Nomb e de la a iable
Pa a que las a iables del iche o se lean co ec amen e, en la subsección Sepa ado de
obse aciones de la Figu a 9, se escoge el ipo de sepa ación (espacio, abulación,
coma o pun o y coma) que hay en e unas a iables y o as den o de la misma ila. Po
de ec o, el sepa ado es Espacio.
En la subsección Fo ma o de la Figu a 9 se elige si las obse aciones de ipo ca ác e
es án esc i as con “Comilla Doble”, ‘Comilla Simple’ o Nada. Po de ec o, Comilla
Doble.
Figu a 9: Sepa ación obse aciones
Una ez elegidas las opciones adecuadas en la lec u a del iche o, la úl ima subsección
que apa ece en es a pa e de pan alla, Núme o de ilas a mos a , Figu a 10, si e pa a
que el usua io indique el núme o de ilas a mos a po pan alla del iche o escogido.
Po de ec o mos a a las 10 p ime as ilas.
Figu a 10: Obse aciones a mos a
En el panel p incipal de la pan alla se encuen a un b e e esumen de los es adís icos
esumen calculados en es a aplicación Shiny y los da os de las ilas desde la p ime a
has a el núme o elegido en el selec o que mues a la Figu a 10.
32
Dos a iables ca egó icas
Figu a 24: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Dos a iables ca egó icas
La en ana pa a dos a iables ca egó icas, Figu a 24, p esen a los esul ados en el
momen o que las a iables a analiza hayan sido decla adas ca egó icas en la en ana
co espondien e. En o o caso, es a en ana se p esen a á acía.
En el panel de la izquie da se encuen a una b e e desc ipción de los esul ados que se
expond án en es a en ana.
En el panel p incipal, en la pa e supe io se mues a el nomb e de las a iables
elegidas. Debajo se p esen a la abla de con ingencia, la ma ginal de cada a iable y un
g a ico de ba as múl iple y o o de ba as apiladas.
33
Dos a iables numé icas
Figu a 25: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Dos a iables numé icas
La en ana pa a dos a iables numé icas, Figu a 25, p esen a los esul ados en el
momen o que las a iables a analiza hayan sido decla adas numé icas en la en ana
co espondien e. En o o caso, es a en ana se p esen a á acía.
En el panel de la izquie da se desc iben los esul ados que se encon a án en es e
panel p incipal.
En el panel cen al, debajo de los nomb es de las a iables se mues an las opciones
pa a la elección del núme o de in e alos en los que se quie en ag upa los da os de
cada a iable escogida si es a es con inua, Figu a 26.
Figu a 26: Selec o es del núme o de in e alos
Cuando las a iables son decla adas numé icas disc e as la abla de doble en ada, la
34
ma ginal y las condicionadas de cada a iable se ealiza con los da os sin ag upa . Si las
a iables son decla adas numé icas con inuas los da os se ag upan en el núme o de
in e alos an es señalado y se c ean es as ablas con los da os así ag upados. En el
caso de que cada a iable sea de un ipo los da os de la a iable con inua se án
ag upados y los de la disc e a no.
Después de es as ablas, el usua io iene la posibilidad de ob ene o a abla adicional
con eniendo las columnas xi, yi, xi2, yi2, xi*yi que se i án pa a los cálculos siguien es.
Figu a 27: Opción mos a abla
A con inuación, se calculan los es adís icos media, des iación ípica, co a ianza y el
coe icien e de co elación de Pea son. Además, se ep esen a una nube de pun os y la
ec a de eg esión.
En la ec a de eg esión apa ecen los coe icien es de la ecuación de dicha ec a.
Al ep esen a la ec a sob e la nube de pun os no siemp e se mues a el co e de es a
con los ejes. El usua io puede ene in e és en isualiza es os co es pa a ep esen a
la o denada en el o igen. Es o es posible ya que se o ece la opción de modi ica los
limi es de los ejes. Es a opción se mues a en la Figu a 28.
Figu a 28: Rec a de eg esión
Una a iable numé ica y una ca egó ica
35
Figu a 29: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Una a iable numé ica y una ca egó ica
La en ana pa a una a iable numé ica y una ca egó ica, Figu a 29, p esen a los
esul ados en el momen o que las a iables a analiza hayan sido decla adas como
numé ica y cuali a i a, o ice e sa, en la en ana co espondien e. Es a si uación
ambién puede se conside ada como una numé ica eunida en a ios g upos. En o o
caso, es a en ana se p esen a á acía.
En el panel izquie do se o ece una noción de los esul ados que se ob end án en el
panel p incipal expues o en la Figu a 29.
En es e caso se calcula una abla de es adís icos esumen que con iene el mínimo, el
máximo, la media, la mediana y el p ime y e ce cua il de la a iable numé ica en
cada alo de la a iable cuali a i a (o g upo) pa a después, a pa i de ellos, ealiza se
el g á ico de cajas y bigo es múl iple.
En el g á ico, po de ec o, se ob ienen las cajas en ho izon al pe o el usua io iene la
opción de ep esen a lo en e ical, Figu a 30.
Figu a 30: Opción o ien ación g a ico de cajas
4.3 Aplicación Shiny P obabilidad
36
La e ce a implemen ación de una aplicación con Shiny en es e TFG se enca ga de la
pa e de p obabilidad. La p obabilidad es un cálculo ma emá ico de las posibilidades
que exis en de que se cumpla un suceso o e en o u u o.
Los cálculos ealizados en es a aplicación se án elacionados con dos dis ibuciones de
p obabilidad, una disc e a como es la Binomial y o a con inua como lo es la No mal.
Además se mues a la ap oximación de la binomial po la no mal.
La aplicación desa ollada con Shiny pa a el uso de dis ibuciones de p obabilidad se
llama P obabilidad y se ejecu a en RS udio con el iche o “P obabilidad.R” esc ibiendo
la o den lib a y(shiny); unApp(‘P obabilidad.R’) en consola. El código del sc ip
P obabilidad.R se encuen a en el Apéndice C.
La aplicación Shiny P obabilidad es á di idida en cua o secciones o en anas:
P obabilidad, Binomial, No mal, Ap oximación Binomial a la No mal. En la Figu a 31
podemos obse a la cabece a de la en ana p incipal.
Figu a 31: Encabezado Aplicación Shiny P obabilidad
P obabilidad
Figu a 32: Aplicación Shiny P obabilidad, Ven ana P obabilidad
En es a p ime a en ana de la aplicación encon a emos los con enidos que se
37
mos a an a lo la go de la aplicación y una simulación de i adas de dados con la media
de pun os ob enidos pa a cada dado en la simulación ob enida.
Binomial
Figu a 33: Aplicación Shiny P obabilidad, Ven ana binomial panel izquie do
La dis ibución binomial es una dis ibución de p obabilidad disc e a que iene como
pa áme os el núme o de epe iciones del expe imen o, n, y la p obabilidad de éxi o,
p. Es os pa áme os se in oducen en la aplicación en el panel mos ado en la Figu a
33.
Es e panel se a a explica po pa es y, po lo an o, la misma en ana es di idida en
a ias Figu as.
Los esul ados que se mues an inicialmen e se calculan con los alo es que oman los
pa áme os po de ec o en la aplicación.
38
Figu a 34: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 1
En la pa e supe io del panel p incipal se encuen a el g á ico de la uncion de
p obabilida y el cálculo de la espe anza y la a ianza de dicha dis ibución a pa i de
los pa áme os in oducidos, Figu a 34.
A con inuación se calculan de alladamen e una se ie de p obabilidades.
Figu a 35: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 2
La Figu a 35 mues a el cálculo de P(X = x) donde x es un nume o que el usua io puede
in oduci .
Figu a 36: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 3
La p obabilidad P(X ≥ x) se calcula en la Figu a 36, x núme o a in oduci po el usua io.
39
Figu a 37: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 4
La Figu a 37 co esponde con la p obabilidad P (X≤ x), x es el núme o que el usua io
in oduce.
Figu a 38: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 5
La p obabilidad de que x se encuen e den o de un in e alo [𝑎,𝑏], 𝑃(𝑎 ≤ 𝑋 ≤ 𝑏),
se calcula en el ozo de aplicación mos ado en la Figu a 38, a es el p ime núme o
que el usua io puede in oduci y b el segundo.
Figu a 39: Aplicación Shiny P obabilidad, Ven ana binomial, panel p incipal 6
En es e caso se calcula el alo de la a iable que deja a su de echa la p obabilidad
in oducida. Es o es, dado p de uel e el alo x al que 𝑃(𝑋 ≤ 𝑥) = 𝑝
Figu a 40: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 7
La Figu a 40 mues a cómo ob ene una mues a alea o ia de an os elemen os como
el usua io indique.
40
No mal
Figu a 41: Aplicación Shiny P obabilidad, Ven ana No mal, panel izquie do
La dis ibución No mal o gaussiana es la más impo an e y de mayo uso en las
dis ibuciones con inuas ya que modeliza g an can idad de enómenos alea o ios.
Es a dis ibución es iden i icada po dos pa áme os que coinciden con la media, μ, y la
des iación ípica, σ, de la dis ibución.
En el panel de la aplicación Shiny P obabilidad que se obse a en la Figu a 41 el
usua io in oduce es os pa áme os pa a maneja la No mal que in e ese.
Una ez especi icados es os pa áme os se pasa a los cálculos del panel p incipal.
Es e panel se i á explicando po pa es y po lo an o la misma en ana se á di idida en
a ias Figu as.
Los esul ados que se mues an inicialmen e se calculan con los alo es po de ec o
que oman los pa áme os de es a aplicación Shiny.
41
Figu a 42: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 1
Después de in oduci los pa áme os deseados, en la pa e supe io del panel
p incipal apa ece el g á ico de la unción de densidad, como podemos obse a en la
Figu a 42.
Figu a 43: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 2
La p obabilidad que se calcula en la Figu a 43 coincide con la unción de dis ibución e aluada
en ese pun o, es deci , F(x) = P(X ≤ x). Además, se mues a el g á ico con el á ea bajo la cu a
que co esponde a es a p obabilidad colo eado.
El usua io ija el alo de x.
48
Apéndice A: Código Aplicación Shiny Desc ipción Uni a ian e
# ins all.packages("shiny", dependencies = T)
# ins all.packages("shiny hemes", dependencies = T)
# ins all.packages("ag icolae", dependencies = T)
lib a y(shiny)
lib a y(shiny hemes)
lib a y(ag icolae)
Mode <- unc ion(x) {
ux <- unique(x)
ux[which.max( abula e(ma ch(x, ux)))]
}
ui <- shinyUI(na ba Page( heme = shiny heme("uni ed"),"DESCRIPCIÓN DE 1
VARIABLE",
abPanel("Elección a chi o",uiOu pu ("componen 1")),
abPanel("Elección a iable",uiOu pu ("componen 2")),
abPanel("Tabla F ecuencias", uiOu pu ("componen 3")),
abPanel("Es adÃ-s icos", uiOu pu ("componen 4")),
abPanel("G á icos", uiOu pu ("componen 5"))
))
se e <- unc ion(inpu , ou pu ) {
ou pu $componen 1 <- ende UI({
sideba Layou (
sideba Panel(
ileInpu (' ile1', 'Lec u a de iche o: ',
accep = c(
' ex /cs ',
' ex /comma-sepa a ed- alues',
' ex / ab-sepa a ed- alues',
' ex /plain',
'.cs '
),
bu onLabel = "Busca iche o",
placeholde = "Ningún a chi o seleccionado"
),
adioBu ons("heade ",
label="¿El a chi o con iene el nomb e de la a iable?",
choices=lis ("SÃ-","No"),
selec ed="SÃ-"),
adioBu ons(inpu Id = 'sep', label='Sepa ado de a iables:',
49
c(Espacio =' ',
"Tabulación"=' ',
Coma=',',
"Pun o y Coma"=';'
),
' '),
adioBu ons('quo e', 'Fo ma o:',
c('Comilla Doble'='"',
'Comilla simple'="'",
"Nada"=''),
'"'),
nume icInpu (inpu Id = "obs",label = "Núme o de ilas a mos a :", alue=10),
ags$h ()
),
mainPanel(
luidRow(column(8,
h1("Fiche o de da os"),
h4("Pa a a iables cuali a i as se ob iene: "),
p("Tabla de ecuencias",align = "cen e "),
p("G á icos",align = "cen e "),
h4("Además, pa a a iables numé icas se ob iene: "),
p("Es adÃ-s icos de cen o o localización",align = "cen e "),
p("Es adÃ-s icos de dispe sión",align = "cen e "),
b (),b (),
h4("Las dimensiones del iche o escogido son:"),
luidRow(column(2,b ()),
column(6,p("Núme o de obse aciones:")),
column(4, e ba imTex Ou pu ("dimensionesFilas",placeholde = T))
),
luidRow(column(2,b ()),
column(6,p("Núme o de a iables:")),
column(4, e ba imTex Ou pu ("dimensionesColumnas",placeholde
= T))
),
h4("P ime os da os del iche o:"),
ableOu pu ('con en s')
),
column(4, b (),b (),img(s c = "nume os.gi ", heigh = 225, wid h = 225))
)
)
)
})
ou pu $componen 2 <- ende UI({
sideba Layou (
sideba Panel(
h4("Elige la a iable de es udio del iche o"),
50
nume icInpu (inpu Id = " a ",label = "Va iable escogida:", alue=1),
adioBu ons(" ipo",
label="Selecciona si la a iable es numé ica o cuali a i a:",
choices=lis ("Cuali a i a","Numé ica"),
selec ed="Cuali a i a"),
condi ionalPanel(condi ion = "inpu . ipo == 'Numé ica'",
adioBu ons(" ipoNume ica",
label="Escoge el ipo de numé ica:",
choices=lis ("Con inua","Disc e a"),
selec ed="Con inua")
),
nume icInpu (inpu Id = "obs1",label = "Núme o de obse aciones a
mos a :", alue=10)
),
mainPanel(
luidRow(column(10, luidRow(s yle="bo de :1px inse ;bo de -
colo :#458cc3;backg ound-colo :#FA7457",
column(5,h3("P ime os da os de la a iable:")),
column(5,b (), e ba imTex Ou pu ("nomb e")))),
column(1,b ())
),b (),
ableOu pu ('con en sV')
)
)
})
ou pu $componen 3 <- ende UI({
sideba Layou (
sideba Panel(wid h = 3,
h3("Tabla de ecuencias"),
p("F ecuencia absolu a ( i)"),
p("F ecuencia ela i a ( )"),
p("Po cen aje: F ecuencia ela i a*100"),b (),
s ong(h4(em("Si el ipo de a iable es decla ado e óneamen e puede que los
esul ados no sean álidos."))),b ()
),
mainPanel(
luidRow(column(10, luidRow(s yle="bo de :1px inse ;bo de -
colo :#458cc3;backg ound-colo :#FA7457",
column(7,h3("Cálculo de abla de ecuencias pa a la a iable:")),
column(3,b (), e ba imTex Ou pu ("nomb e1")))),
column(1,b ()))
,b (),
condi ionalPanel(condi ion = "inpu . ipo =='Numé ica' && inpu . ipoNume ica
== 'Con inua'",
51
p("Escoge el núme o de in e alos en los que ag upa los da os:"),
nume icInpu (inpu Id = "pa icion",label = " ", alue=10)
),
ableOu pu (" iew")
)
)
})
ou pu $componen 4 <- ende UI({
sideba Layou (
sideba Panel(wid h = 3,
h3("Es adÃ-s icos de cen o: "),
s ong("MÃ-nimo y Máximo"),b (),
s ong("Cua iles"),b (),
s ong("Pe cen il"),b (),
s ong("Media a i mé ica"),b (),
s ong("Mediana"),b (),
s ong("Moda"),b (),
h3("Es adÃ-s icos de dispe sión: "),
s ong("Rango o eco ido"),
s ong("Va ianza"),b (),
s ong("Des iación Ã-pica"),b (),
s ong("Coe icien e de a iación"),b (),
s ong("Rango in e cua ilico"),b (),b (),
s ong(h4(em("Si el ipo de a iable es decla ado e óneamen e los esul ados
puede que no sean álidos"))),b ()
),
mainPanel(
condi ionalPanel(condi ion = "inpu . ipo == 'Numé ica'",
luidRow(column(10, luidRow(s yle="bo de :1px inse ;bo de -
colo :#458cc3;backg ound-colo :#FA7457",
column(7,h3("Cálculo de es adÃ-s icos pa a la a iable:")),
column(3,b (), e ba imTex Ou pu ("nomb e2")))),
column(1,b ()))
,b (),
luidRow(
column(5,
p("MÃ-nimo y máximo:"),
e ba imTex Ou pu ("minmax"),
p("P ime y e ce cua il:"),
e ba imTex Ou pu ("cua iles"),
luidRow(column(4,b (),p("Pe cen il:")),
column(4,nume icInpu (inpu Id = "pe c",label = " ", alue=20))),
e ba imTex Ou pu ("pe cen il"),
p("Media:"),
e ba imTex Ou pu ("media"),
p("Mediana o segundo cua il:"),
52
e ba imTex Ou pu ("mediana"),
p("Moda:"),
e ba imTex Ou pu ("moda")
),
column(5,
p("Rango o eco ido:"),
e ba imTex Ou pu (" ango"),
p("Va ianza:"),
e ba imTex Ou pu (" a ianza"),
p("Des iación Ã-pica: "),
e ba imTex Ou pu ("des iacion"),
p("Coe icien e de a iacion: "),
e ba imTex Ou pu ("c "),
p("Rango in e cua ilico: "),
e ba imTex Ou pu (" angoIn e cua ilico"))
)
),
condi ionalPanel(condi ion = "inpu . ipo == 'Cuali a i a'",
h4("Pa a ob ene esul ados en es a sección la a iable iene que se
decla ada numé ica"))
))
})
ou pu $componen 5 <- ende UI({
sideba Layou (
sideba Panel(wid h=3,
wellPanel(s yle= "backg ound:whi e",
img(s c = "sec o es.gi ", heigh = 150, wid h = 200), b (),
h5("G á ico de ba as"),
h5("G á ico de sec o es"),
h5("Diag ama de cajas y bigo es"),
h5("His og ama"),
h5("PolÃ-gono de ecuencias"),
h4(s ong(em("Si se ha decla ado e óneamen e el ipo de a iable los
esul ados puede que no sean álidos"))),b (),b (),
h6("Dependiendo del ipo de a iable decla ado se dibuja an unos g á icos
u o os"),
h6("Pa a a iables numé icas con inuas el diag ama de a illas y sec o es
se dibuja a cuando n < 15")
)
),
mainPanel(
luidRow(column(10, luidRow(s yle="bo de :1px inse ;bo de -
colo :#458cc3;backg ound-colo :#FA7457",
column(7,h3("G á icos pa a la a iable:")),
column(3,b (), e ba imTex Ou pu ("nomb e3")))),
53
column(1,b ())
),
condi ionalPanel(condi ion = "inpu . ipo == 'Cuali a i a'",
h4("G á ico de ba as"),
plo Ou pu (ou pu Id = "ba as"),
h4("G á ico de sec o es"),
plo Ou pu (ou pu Id = "sec o es")
),
condi ionalPanel(condi ion = "inpu . ipo == 'Numé ica' && inpu . ipoNume ica
== 'Disc e a'",
h4("G á ico de ba as"),
plo Ou pu (ou pu Id = "ba asD"),
h4("G á ico de sec o es"),
plo Ou pu (ou pu Id = "sec o esD")
),
condi ionalPanel(condi ion = "inpu . ipo == 'Numé ica' && inpu . ipoNume ica
== 'Con inua'",
condi ionalPanel(condi ion = "'leng h(unique(da ase Inpu 1()[,1]))' < 16",
h4("G á ico de ba as"),
plo Ou pu (ou pu Id = "ba asC"),
h4("G á ico de sec o es"),
plo Ou pu (ou pu Id = "sec o esC")
),
h4("Cajas y Bigo es"),
plo Ou pu (ou pu Id = "cajas"),
p("Pa a los siguien es g á icos podemos elegi el núme o de
pa iciones: "),
slide Inpu (inpu Id = "bins",label = " ",min = 1,max=100, alue=5),
h4("His og ama"),
plo Ou pu (ou pu Id = "his og ama"),
p("Pa iciones del his og ama:"),
e ba imTex Ou pu ("clases"),
h4("PolÃ-gono de ecuencias"),
plo Ou pu (ou pu Id = "polF ec"),
plo Ou pu (ou pu Id = "polF ecSIN")
)
)
)
})
########################### LECTURA DE DATOS -- cOMPONENTE 1
####################################
da ase Inpu <- eac i e({
eq(inpu $ ile1)
inFile <- inpu $ ile1
54
i (inpu $heade == "SÃ-"){
a <- TRUE
}else{ a <- FALSE}
db <- ead.cs (inFile$da apa h, heade = a,
sep = inpu $sep, quo e = inpu $quo e)
db <- da a. ame(db)
})
da ase Inpu 1 <- eac i e({
db <- da ase Inpu ()
i (inpu $ a <= 0){
db <- NULL
}else i (inpu $ a > ncol(db)){
db <- NULL
}else{
nomb e <- names(da ase Inpu ())
db <-as.da a. ame(db[,inpu $ a ])
colnames(db) <- nomb e[inpu $ a ]
db
}
})
ou pu $con en s <- ende Table({
i (inpu $obs <= 0){
NULL
}else{
head(da ase Inpu (),n=inpu $obs)
}
})
ou pu $dimensionesFilas <- ende P in ({
ca (n ow(da ase Inpu ()))
})
ou pu $dimensionesColumnas <- ende P in ({
ca (ncol(da ase Inpu ()))
})
ou pu $con en sV <- ende Table({
i (inpu $obs <=0){
NULL
}else{
head(da ase Inpu 1(),n=inpu $obs1)
}
})
ou pu $nomb e <- ende P in ({
55
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e1 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e2 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e3 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
########################### TABLA DE FRECUENCIAS -- COMPONENTE 2
####################################
ou pu $pa icionIn e alo <- ende Tex ({
i (inpu $ ipo=="Numé ica" && inpu $ ipoNume ica =="Con inua"){
"Escoge núme o de in e alos:"
}
})
ou pu $ iew <- ende Table({
i (inpu $ ipo == "Cuali a i a"){
i <- able(da ase Inpu ()[,inpu $ a ])
<- ound(p op. able( able(da ase Inpu ()[,inpu $ a ])),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os","F ecuencia absolu a","F ecuencia
ela i a","Po cen aje")
abla
}
else i (inpu $ ipo == "Numé ica" && inpu $ ipoNume ica == "Disc e a"){
i <- able(da ase Inpu ()[,inpu $ a ])
<- ound(p op. able( able(da ase Inpu ()[,inpu $ a ])),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os","F ecuencia absolu a","F ecuencia
ela i a","Po cen aje")
abla
}else i (inpu $ ipo == "Numé ica" && inpu $ ipoNume ica == "Con inua"){
a <- ac o (cu (da ase Inpu ()[,inpu $ a ],b eaks = inpu $pa icion))
i <- ( able(a))
<- ound(p op. able( able(a)),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
56
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os","F ecuencia absolu a","F ecuencia
ela i a","Po cen aje")
abla
}
})
########################### ESTADISTICOS -- COMPONENTE 3
####################################
ou pu $minmax <- ende P in ({
summa y(da ase Inpu 1()[,1])[c(1,6)]
})
ou pu $cua iles <- ende P in ({
summa y(da ase Inpu 1()[,1])[c(2,5)]
})
ou pu $pe cen il <- ende P in ({
quan ile( da ase Inpu 1()[,1] , p ob = inpu $pe c/100)
})
ou pu $media <- ende P in ({
ca (summa y(da ase Inpu 1()[,1])[4])
})
ou pu $mediana <- ende P in ({
ca (summa y(da ase Inpu 1()[,1])[3])
})
ou pu $moda <- ende P in ({
ca (Mode(da ase Inpu 1()[,1]))
})
ou pu $ ango <- ende P in ({
ca (max(da ase Inpu 1()[,1])-min(da ase Inpu 1()[,1]))
})
ou pu $ a ianza <- ende P in ({
ca ( a (da ase Inpu 1()[,1]))
})
ou pu $des iacion <- ende P in ({
ca (sd(da ase Inpu 1()[,1]))
})
57
ou pu $c <- ende P in ({
CV <- sd(da ase Inpu 1()[,1])/mean(da ase Inpu 1()[,1])
CVp <- CV*100
abla <- cbind(CV,CVp)
colnames( abla) <- c("CV","CV %")
ownames( abla) <- c("")
abla
})
ou pu $ angoIn e cua ilico <- ende P in ({
ca (IQR(da ase Inpu 1()[,1]))
})
########################### GRAFICOS -- COMPONENTE 4
####################################
ou pu $ba as <- ende Plo ({
ba plo (( able(da ase Inpu 1()[,1])), col = "blue",bo de = NA, main =
names(da ase Inpu 1())[1])
})
ou pu $ba asD <- ende Plo ({
plo (( able(da ase Inpu 1()[,1])), ype = "h",col = "g een", cex = 4, ylab = " ", main =
names(da ase Inpu 1())[1])
})
ou pu $ba asC <- ende Plo ({
plo (( able(da ase Inpu 1()[,1])), ype = "h",col = "pink", cex = 4, ylab = " ", main =
names(da ase Inpu 1())[1])
})
ou pu $sec o es <- ende Plo ({
pie(p op. able( able(da ase Inpu 1()[,1])), main = names(da ase Inpu 1())[1])
})
ou pu $sec o esD <- ende Plo ({
pie(p op. able( able(da ase Inpu 1()[,1])), main = names(da ase Inpu 1())[1])
})
ou pu $sec o esC <- ende Plo ({
pie(p op. able( able(da ase Inpu 1()[,1])), main = names(da ase Inpu 1())[1])
})
ou pu $cajas <- ende Plo ({
boxplo (da ase Inpu 1()[,1],col=" ed",main = names(da ase Inpu 1())[1])
})
64
p("Media Y:"),
e ba imTex Ou pu ("mediaY"),
p("Des iación TÃ-pica X:"),
e ba imTex Ou pu ("des iacionX"),
p("Des iación TÃ-pica Y:"),
e ba imTex Ou pu ("des iacionY"),
p("Co a ianza:"),
e ba imTex Ou pu ("co "),
p("Coe icien e de co elación lineal de Pea son:"),
e ba imTex Ou pu ("co "),
p("Nube de pun os"),
plo Ou pu (ou pu Id = "nube"),
b (),b (),b (),
p("Coe icien es de la ecuación de la ec a de eg esión:"),
e ba imTex Ou pu (" eg esionX"),
p("G á ico de la ec a de eg esión Y sob e X:"),
plo Ou pu (ou pu Id = " ec aX"),
adioBu ons("modi ica Rec a",
label="¿Modi ica ejes del g á ico?",
choices=lis ("SÃ-","No"),
selec ed="No"),
condi ionalPanel(condi ion = "inpu .modi ica Rec a == 'SÃ-'",
luidRow(column(5,nume icInpu (inpu Id = "in X",label = "LÃ-mi e in e io
del eje X :", alue=0),
nume icInpu (inpu Id = "in Y",label = "LÃ-mi e in e io del eje Y
:", alue=0)),
column(5,nume icInpu (inpu Id = "supX",label = "LÃ-mi e supe io del
eje X :", alue=2),
nume icInpu (inpu Id = "supY",label = "LÃ-mi e supe io del eje Y
:", alue=2))),
plo Ou pu (ou pu Id = " ec aXModi ")
)
),
condi ionalPanel(condi ion = "inpu . ipo1 != 'Numé ica' || inpu . ipo2 !=
'Numé ica'",
h4("Pa a ob ene esul ados en es a sección las dos a iables deben
se decla adas numé icas"))
)
)
)
})
ou pu $componen 5 <- ende UI({
sideba Layou (
sideba Panel(wid h = 3,
h4("Tabla de es adÃ-s icos"),
65
p("Es adÃ-s icos básicos con los que se cons uye el g á ico de cajas"),
h4("G á ico de cajas"),
p("Ú il pa a compa a ."),b (),b (),
s ong(h4(em("Si se ha decla ado el ipo de a iable e óneamen e los esul ados
puede que no sean álidos."))),b ()
),
mainPanel(
wellPanel(s yle = "backg ound: #FFFFFF",
condi ionalPanel(condi ion = "(inpu . ipo1 == 'Numé ica' && inpu . ipo2 ==
'Cuali a i a') || (inpu . ipo2 == 'Numé ica' && inpu . ipo1 == 'Cuali a i a')",
luidRow(s yle="bo de :1px inse ;bo de -colo :#458cc3;backg ound-
colo :#A8D1FC",column(5, h3("Nomb e a iable 1: "),b (),
h3("Nomb e a iable 2: ")),
column(5,b (), e ba imTex Ou pu ("nomb e 5"),b (),
e ba imTex Ou pu ("nomb e 6"))
),b (),
h3("Tabla de es adÃ-s icos"),
ableOu pu ("es adis icos"),
h3("G á ico de cajas"),
adioBu ons("o ien acion",
label="Selecciona la o ien ación de las cajas:",
choices=lis ("Ho izon al","Ve ical"),
selec ed="Ho izon al"),
plo Ou pu (ou pu Id = "cajas")
),
condi ionalPanel(condi ion = "(inpu . ipo1 == 'Numé ica' && inpu . ipo2 ==
'Numé ica')",
h4("Pa a ob ene esul ados en es a sección una a iable iene que
se decla ada numé ica y la o a ca egó ica")),
condi ionalPanel(condi ion = "(inpu . ipo1 == 'Cuali a i a' && inpu . ipo2 ==
'Cuali a i a')",
h4("Pa a ob ene esul ados en es a sección una a iable iene que
se decla ada numé ica y la o a ca egó ica"))
)
)
)
})
########################### LECTURA DE DATOS
####################################
da ase Inpu <- eac i e({
eq(inpu $ ile1)
inFile <- inpu $ ile1
i (inpu $heade == "SÃ-"){
a <- TRUE
66
}else{ a <- FALSE}
db <- ead.cs (inFile$da apa h, heade = a,
sep = inpu $sep, quo e = inpu $quo e)
db <- da a. ame(db)
})
ou pu $con en s <- ende Table({
i (inpu $obs <=0){
NULL
}else{
head(da ase Inpu (),n=inpu $obs)
}
})
# VARIABLE 1
da ase Inpu 1 <- eac i e({
db <- da ase Inpu ()
i (inpu $ a 1 <= 0){
db <- NULL
}else i (inpu $ a 1 > ncol(db)){
db <- NULL
}else{
nomb e <- names(da ase Inpu ())
db <-as.da a. ame(db[,inpu $ a 1])
colnames(db) <- nomb e[inpu $ a 1]
db
}
})
ou pu $con en sV1 <- ende Table({
i (inpu $obs1 <=0){
NULL
}else{
head(da ase Inpu 1(),n=inpu $obs1)
}
})
# VARIABLE 2
da ase Inpu 2 <- eac i e({
db <- da ase Inpu ()
i (inpu $ a 2 <= 0){
db <- NULL
}else i (inpu $ a 2 > ncol(db)){
db <- NULL
}else{
nomb e <- names(da ase Inpu ())
db <-as.da a. ame(db[,inpu $ a 2])
67
colnames(db) <- nomb e[inpu $ a 2]
db
}
})
ou pu $dimensionesFilas <- ende P in ({
ca (n ow(da ase Inpu ()))
})
ou pu $dimensionesColumnas <- ende P in ({
ca (ncol(da ase Inpu ()))
})
ou pu $con en sV2 <- ende Table({
i (inpu $obs1 <=0){
NULL
}else{
head(da ase Inpu 2(),n=inpu $obs1)
}
})
ou pu $nomb e 1 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e 2 <- ende P in ({
ca (names(da ase Inpu 2())[1])
})
ou pu $nomb e 3 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e 4 <- ende P in ({
ca (names(da ase Inpu 2())[1])
})
ou pu $nomb e 5 <- ende P in ({
ca (names(da ase Inpu 1())[1])
})
ou pu $nomb e 6 <- ende P in ({
ca (names(da ase Inpu 2())[1])
})
68
########################### DOS VARIABLES CATEGORICAS -- COMPONENTE 3
####################################
ou pu $ iew1 <- ende Table({
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
abla <- addma gins( abla)
abla <- as.da a. ame( abla)
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)," o al"), abla)
colnames( abla) <- c(" ",le els(nomb esV2)," o al")
abla
})
ou pu $ma g11 <- ende Table({
i <- able(da ase Inpu 1()[,1])
<- ound(p op. able( able(da ase Inpu 1()[,1])),3)
Po cen aje <- ound( ,3)*100
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
})
ou pu $ma g21 <- ende Table({
i <- able(da ase Inpu 2()[,1])
<- ound(p op. able( able(da ase Inpu 2()[,1])),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
})
ou pu $condX1 <- ende Table({
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
abla <- p op. able( abla,2)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
})
ou pu $condY1 <- ende Table({
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
69
abla <- p op. able( abla,1)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
})
ou pu $ba as <- ende Plo ({
a <- da a. ame(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
ggplo (a, aes(x=a[,1], ill=a[,2])) + geom_ba (posi ion="dodge") + labs(x =
names(da ase Inpu 1())[1], ill = names(da ase Inpu 2())[1], y = " ") + heme_bw() +
heme(panel.backg ound = elemen _blank ())
})
ou pu $ba asApiladas <- ende Plo ({
a <- da a. ame(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
ggplo (a, aes(x=a[,1], ill=a[,2])) + geom_ba (posi ion=" ill") + labs(x =
names(da ase Inpu 1())[1], ill = names(da ase Inpu 2())[1], y = "
")+scale_y_con inuous(labels=pe cen )
})
########################### DOS VARIABLES NUMERICAS -- COMPONENTE 4
####################################
ou pu $pa icionIn e alo1 <- ende Tex ({
i (inpu $ ipoNume ica1 =="Con inua" || inpu $ ipoNume ica2 == "Con inua"){
"Escoge núme o de in e alos pa a la o las a iables con inuas:"
}
})
ou pu $ iew <- ende Table({
i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 == "Disc e a"){
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
abla <- addma gins( abla)
abla <- as.da a. ame( abla)
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)," o al"), abla)
colnames( abla) <- c(" ",le els(nomb esV2)," o al")
abla
}else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 ==
"Con inua"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
70
abla <- able(a,b)
abla <- addma gins( abla)
abla <- as.da a. ame( abla)
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)," o al"), abla)
colnames( abla) <- c(" ",le els(nomb esV2)," o al")
abla
}else i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 == "Con inua"){
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
abla <- able(da ase Inpu 1()[,1],b)
abla <- addma gins( abla)
abla <- as.da a. ame( abla)
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)," o al"), abla)
colnames( abla) <- c(" ",le els(nomb esV2)," o al")
abla
}
else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 == "Disc e a"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
abla <- able(a,da ase Inpu 2()[,1])
abla <- addma gins( abla)
abla <- as.da a. ame( abla)
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)," o al"), abla)
colnames( abla) <- c(" ",le els(nomb esV2)," o al")
abla
}
else{NULL}
})
ou pu $ma g1 <- ende Table({
i (inpu $ ipoNume ica1 == "Disc e a"){
i <- able(da ase Inpu 1()[,1])
<- ound(p op. able( able(da ase Inpu 1()[,1])),3)
Po cen aje <- ound( ,3)*100
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
}else i (inpu $ ipoNume ica1 == "Con inua"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
i <- ( able(a))
<- ound(p op. able( able(a)),3)
71
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
}
})
ou pu $ma g2 <- ende Table({
i (inpu $ ipoNume ica2 == "Disc e a"){
i <- able(da ase Inpu 2()[,1])
<- ound(p op. able( able(da ase Inpu 2()[,1])),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
}else i (inpu $ ipoNume ica2 == "Con inua"){
a <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
i <- ( able(a))
<- ound(p op. able( able(a)),3)
Po cen aje <- ound( *100,4)
abla <- da a. ame( i, ,Po cen aje)
abla <- abla[,-c(3,5)]
colnames( abla) <- c("Da os"," i"," ","Po cen aje")
abla
}
})
ou pu $condX <- ende Table({
i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 == "Disc e a"){
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
abla <- p op. able( abla,2)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 ==
"Con inua"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
abla <- able(a,b)
abla <- p op. able( abla,2)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(a))))
72
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}else i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 ==
"Con inua"){
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
abla <- able(da ase Inpu 1()[,1],b)
abla <- p op. able( abla,2)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}
else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 == "Disc e a"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
abla <- able(a,da ase Inpu 2()[,1])
abla <- p op. able( abla,2)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(a))))
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}
else{NULL}
})
ou pu $condY <- ende Table({
i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 == "Disc e a"){
abla <- able(da ase Inpu 1()[,1],da ase Inpu 2()[,1])
abla <- p op. able( abla,1)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 ==
"Con inua"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
73
abla <- able(a,b)
abla <- p op. able( abla,1)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(a))))
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}else i (inpu $ ipoNume ica1 == "Disc e a" && inpu $ ipoNume ica2 == "Con inua"){
b <- ac o (cu (da ase Inpu 2()[,1],b eaks = inpu $pa icionV2))
abla <- able(da ase Inpu 1()[,1],b)
abla <- p op. able( abla,1)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(da ase Inpu 1()[,1]))))
nomb esV1 <- as. ac o (unique(so (da ase Inpu 1()[,1])))
nomb esV2 <- as. ac o (unique(so (b)))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}
else i (inpu $ ipoNume ica1 == "Con inua" && inpu $ ipoNume ica2 == "Disc e a"){
a <- ac o (cu (da ase Inpu 1()[,1],b eaks = inpu $pa icionV1))
abla <- able(a,da ase Inpu 2()[,1])
abla <- p op. able( abla,1)
abla <- da a. ame(ma ix( abla, n ow = leng h(unique(a))))
nomb esV1 <- as. ac o (unique(so (a)))
nomb esV2 <- as. ac o (unique(so (da ase Inpu 2()[,1])))
abla <- cbind(c(le els(nomb esV1)), abla)
colnames( abla) <- c(" ",le els(nomb esV2))
abla
}
else{NULL}
})
ou pu $ ablaIn e media <- ende Table({
i (inpu $ esul ados == "Mos a "){
Xi <- da ase Inpu 1()[,1]
Yi <- da ase Inpu 2()[,1]
Xi2 <- Xi^2
Yi2 <- Yi^2
XiYi <- Xi*Yi
abla <- da a. ame(cbind(Xi,Yi,Xi2,Yi2,XiYi))
names( abla) <- c("X","Y","Cuad ado de X","Cuad ado de Y","P oduc o X po Y")
abla
}else{NULL}
})
ou pu $mediaX <- ende P in ({
80
column(1,b (),s ong(" éxi os"))
),
e ba imTex Ou pu ("p obabilidadAlMenos"),b (),
luidRow(column(6,b (),s ong("P obabilidad de ob ene un maximo de ")),
column(3, nume icInpu (inpu Id = "exi os2",label = " ", alue = 0,min = 0)),
column(1,b (),s ong(" éxi os"))
),
e ba imTex Ou pu ("p obabilidadMucho"),b (),
luidRow(column(5,b (),s ong("P obabilidad de ob ene en e ")),
column(2, nume icInpu (inpu Id = "exi osP",label = " ", alue = 0,min = 0)),
column(1,b (),s ong(" y")),
column(2, nume icInpu (inpu Id = "exi osS",label = " ", alue = 1,min = 0)),
column(1,b (),s ong(" éxi os"))
),
e ba imTex Ou pu ("p obabilidadIn e alo"),b (),
luidRow(column(6,b (),s ong("Valo de la a iable que deja a su de echa la
p obabilidad de ")),
column(2, nume icInpu (inpu Id = "po cen aje",label = " ", alue = 0,min = 0,
max = 1,s ep = 0.05))
),
e ba imTex Ou pu ("Po cen ajeObs"),b (),
luidRow(column(6,b (),s ong("Gene ación de una mues a alea o ia de amaño
")),
column(2, nume icInpu (inpu Id = " alo es",label = " ", alue = 5,min = 0))
),
e ba imTex Ou pu ("mues a"),b ()
)
)
)
})
########################### NORMAL -- COMPONENTE 3
##########################################################
ou pu $componen 3 <- ende UI({
sideba Layou (
sideba Panel(
wellPanel(s yle= "backg ound:g ey",
h3("Dis ibución no mal"),
h4(em("Pa áme os de la dis ubución no mal: ")),
nume icInpu (inpu Id = "mu", label = "Media", alue = 0),
nume icInpu (inpu Id = "sigma",label = "Des iación TÃ-pica", alue = 1),
b (),
img(s c = "no mal.gi ", heigh = 200, wid h = 200),
b (),b ()
)
81
),
mainPanel(
wellPanel(s yle= "backg ound:g ey",
h3("La dis ibución no mal"),b (),
s ong("Rep esen ación de la unción de densidad "),b (),b (),
plo Ou pu ("g a icoNo mal"),
luidRow(column(6,b (),s ong("P obabilidad de que la a iable alea o ia sea meno
que ")),
column(2, nume icInpu (inpu Id = "meno ",label = " ", alue = 1, s ep = 0.1))
),
e ba imTex Ou pu ("Pmeno "),b (),
plo Ou pu ("g a icoNo malMeno "),b (),
luidRow(column(6,b (),s ong("P obabilidad de que la a iable alea o ia sea mayo
que ")),
column(2, nume icInpu (inpu Id = "mayo ",label = " ", alue =0,s ep = 0.1))
),
e ba imTex Ou pu ("Pmayo "),b (),
plo Ou pu ("g a icoNo malMayo "),b (),
luidRow(column(5,b (),s ong("P obabilidad de que la a iable alea o ia se
encuen e en e ")),
column(2, nume icInpu (inpu Id = "meno I",label = " ", alue = 0, s ep = 0.1)),
column(1,b (),s ong(" y")),
column(2, nume icInpu (inpu Id = "mayo I",label = " ", alue = 1,s ep = 0.1))
),
e ba imTex Ou pu ("p obabilidadIn e aloN"),b (),
s ong("Rep esen ación de la p obabilidad calculada an e io men e"),b (),b (),
plo Ou pu ("g a icoNo malP obabilidad"),b (),
luidRow(column(7,b (),s ong("Valo de la a iable que deja a su de echa una
p obabilidad de ")),
column(2, nume icInpu (inpu Id = "po cen ajeN",label = " ", alue = 0.1,min = 0,
max = 1, s ep = 0.05))
),
e ba imTex Ou pu ("Po cen ajeObsN"),b (),
luidRow(column(8,b (),s ong("Gene ación de una mues a alea o ia de amaño
")),
column(2, nume icInpu (inpu Id = " alo esN",label = " ", alue = 5,min = 0))
),
e ba imTex Ou pu ("mues aN")
)
)
)
})
########################### APROXIMACION -- COMPONENTE 4
##########################################################
82
ou pu $componen 4 <- ende UI({
sideba Layou (
sideba Panel(
wellPanel(s yle= "backg ound:g ey",
h4("Ap oximación de la dis ibución binomial a la No mal"),
p("Pa áme os de la dis ubución binomial: "),
nume icInpu (inpu Id = "n1", label = "Núme o de epe iciones, n", min = 0, alue =
50),
nume icInpu (inpu Id = "p1",label = "P obabilidad de éxi o, p",min = 0,max = 1,
alue = 0.5,s ep = 0.05),
b (),img(s c = "dado.gi ", heigh = 200, wid h = 200),b (),b ()
)
),
mainPanel(
wellPanel(s yle= "backg ound:g ey",
h4("Ap oximación de la dis ibución binomial a la No mal"),b (),
s ong("G á ico de ap oximación"),b (),b (),
ex Ou pu ("NoAp ox"),b (),
plo Ou pu ("g a icoBinomialNo mal")
)
)
)
})
########################### PROBABILIDAD -- COMPONENTE 1
##########################################################
ou pu $g a icoDados <- ende Plo ({
dice( olls = inpu $ olls, ndice = inpu $ndice ,plo .i = T)
})
ou pu $mediaDados <- ende P in ({
mp <- dice( olls = inpu $ olls, ndice = inpu $ndice)
colMeans( mp)
})
########################### BINOMIAL -- COMPONENTE 2
##########################################################
ou pu $espe anza <- ende P in ({
ca (inpu $n*inpu $p)
})
ou pu $ a ianza <- ende P in ({
ca (inpu $n*inpu $p*(1-inpu $p))
})
ou pu $p obabilidad <- ende P in ({
ca (dbinom(inpu $exi os,inpu $n,inpu $p))
})
ou pu $p obabilidadAlMenos <- ende P in ({
83
ca (1-pbinom(inpu $exi os1-1,inpu $n,inpu $p))
})
ou pu $p obabilidadMucho <- ende P in ({
ca (pbinom(inpu $exi os2-1,inpu $n,inpu $p,lowe . ail = T))
})
ou pu $p obabilidadIn e alo <- ende P in ({
i (inpu $exi osS >= inpu $exi osP){
IC <- pbinom(c(inpu $exi osP-1,inpu $exi osS),inpu $n,inpu $p)
ca (IC[2]-IC[1])
}else{NULL}
})
ou pu $Po cen ajeObs <- ende P in ({
ca (qbinom(1-inpu $po cen aje, inpu $n,inpu $p))
})
ou pu $mues a <- ende P in ({
ca ( binom(inpu $ alo es,inpu $n,inpu $p))
})
ou pu $g a icoBinomial <- ende Plo ({
plo (dbinom(0:inpu $n,inpu $n,inpu $p), ype =
"h",xlab="x",ylab="P(X=x)",main=exp ession(pas e("Funcion de p obabilidad B(", n, ",",p,")")))
})
########################### NORMAL -- COMPONENTE 3
############################################################
ou pu $Pmeno <- ende P in ({
ca (pno m(inpu $meno ,inpu $mu,inpu $sigma))
})
ou pu $g a icoNo malMeno <- ende Plo ({
cu e(dno m(x,inpu $mu,inpu $sigma),inpu $mu-
(inpu $mu+10)/2,inpu $mu+(inpu $mu+10)/2,lwd=2, ylab =
" (x)",main=exp ession(pas e("Densidad de la No mal N(", mu, ",", sigma^2,")")))
<-seq(inpu $mu-(inpu $mu+10)/2,inpu $meno ,by=0.01)
x <- c(-100000000000, ,inpu $meno )
y <- c(0,dno m( ,inpu $mu,inpu $sigma),0)
polygon(x,y,col="o ange1")
})
ou pu $Pmayo <- ende P in ({
ca (1-pno m(inpu $mayo ,inpu $mu,inpu $sigma))
})
ou pu $p obabilidadIn e aloN <- ende P in ({
i (inpu $mayo I >= inpu $meno I){
IC <- pno m(c(inpu $mayo I,inpu $meno I),inpu $mu,inpu $sigma)
84
ca (IC[1]-IC[2])
}else{NULL}
})
ou pu $g a icoNo malP obabilidad <- ende Plo ({
i (inpu $meno I <=inpu $mayo I){
cu e(dno m(x,inpu $mu,inpu $sigma),inpu $mu-
(inpu $mu+10)/2,inpu $mu+(inpu $mu+10)/2,lwd=2, ylab =
" (x)",main=exp ession(pas e("Densidad de la No mal N(", mu, ",", sigma^2,")")))
<-seq(inpu $meno I,inpu $mayo I,by=0.01)
x <- c(inpu $meno I, ,inpu $mayo I)
y <- c(0,dno m( ,inpu $mu,inpu $sigma),0)
polygon(x,y,col="o ange1")
}else{NULL}
})
ou pu $g a icoNo malMayo <- ende Plo ({
cu e(dno m(x,inpu $mu,inpu $sigma),inpu $mu-
(inpu $mu+10)/2,inpu $mu+(inpu $mu+10)/2,lwd=2, ylab =
" (x)",main=exp ession(pas e("Densidad de la No mal N(", mu, ",", sigma^2,")")))
<-seq(inpu $mayo ,inpu $mu+(inpu $mu+10)/2,by=0.01)
x <- c(inpu $mayo , ,100000000000)
y <- c(0,dno m( ,inpu $mu,inpu $sigma),0)
polygon(x,y,col="o ange1")
})
ou pu $Po cen ajeObsN <- ende P in ({
ca (qno m(1-inpu $po cen ajeN, inpu $mu,inpu $sigma))
})
ou pu $mues aN <- ende P in ({
ca ( no m(inpu $ alo esN,inpu $mu,inpu $sigma))
})
ou pu $g a icoNo mal <- ende Plo ({
x <- seq(1,1)
a <- inpu $mu
cu e(dno m(x, inpu $mu, inpu $sigma),xlim=c(inpu $mu-
(inpu $mu+10)/2,inpu $mu+(inpu $mu+10)/2),col="blue",lwd=2,xlab="x",ylab=" (x)",main=ex
p ession(pas e("Densidad de la No mal N(", mu, ",", sigma^2,")")))
})
########################### APROXIMACION BINOMIAL A NORMAL -- COMPONENTE 4
####################################
ou pu $NoAp ox <- ende Tex ({
i (inpu $n1*inpu $p1 < 3){
"Es a binomial no ap oxima bien a la no mal. Modi ica el alo de las epe iciones, n, o de la
p obabilidad, p"
}
})
85
ou pu $g a icoBinomialNo mal <- ende Plo ({
plo (dbinom(0:(inpu $n1+inpu $n1/2),inpu $n1,inpu $p1), ype =
"h",xlab="x",ylab="P(X=x)")
lines(dno m(0:(inpu $n1+inpu $n1/2),inpu $n1*inpu $p1,sq (inpu $n1*inpu $p1*(1-
inpu $p1))),col=2)
})
}
shinyApp(ui = ui, se e = se e )
86
BIBLIOGRAFIA Y/O REFERENCIAS
Bole ín O icial de Cas illa y León Núm. 86, 8 de mayo de 2015, e .
“CV: BOCYL-D- 08052015-5”.
Bole ín O icial del Es ado Núm. 295, 10 de diciemb e de 2013, e .
“BOE-A-2013- 12886”.
Bole ín O icial del Es ado Núm. 3, 3 de ene o de 2015, e . “BOE-A-
2015- 37”.
Bole ín O icial del Es ado Núm. 104, 1 de mayo de 2015, e . “BOE-A-
2015- 4782”.
Bole ín O icial del Es ado Núm. 25, 29 de ene o de 2015, e . “BOE-A-
2015- 738”.
Bole ín O icial del Es ado Núm.1835, 30 de julio de 2016, e . “BOE-
A-2016- 7337”.
Lea n Shiny [si io web]. [Consul a 26-04-2019]. Disponible en:
h ps://Shiny. s udio.com/
Shiny-examples [si io web]. [Consul a 25-04-2019]. Disponible en:
h ps://gi hub.com/ s udio/Shiny-examples
RS udio [si io web]. [Consul a 26-04-2019]. Disponible en: h ps://www. s udio.com/
The R P ojec o S a is ical Compu ing. [Si io web]. [Consul a 13-04-2019]. Disponible
en: h ps://www. -p ojec .o g/
Cole a, J., Oli ei a, M.J. and Cole a, R. (2016). Ma emá icas Aplicadas a las Ciencias
Sociales II. Edi o ial Anaya. ISBN: 978-84-1280-8.
Cole a, J., Oli ei a, M.J., Ga cía, R. and San aella, E. (2008). Ma emá icas I. Edi o ial
Anaya. ISBN: 978-84-667-7283-9.
Con e as, I., Lobo, B., Pé ez, J., U iondo, J. and Fe nández, I. (2011). Ma emá icas, 1º
ESO. Edi o ial Ox o d Educación. ISBN: 978-84-673-6288-6.
Con e as, I., Fe nández, I., Pé ez, J. and U iondo, J. (2012). Ma emá icas, 2º ESO.
Edi o ial Ox o d Educación. ISBN: 978-84-673-6288-6.
Con e as, I., Lobo, B., Pé ez, S., Pé ez, J., San aella, E. and Fe nández, I.
(2011). Ma emá icas, 3º ESO. Edi o ial Ox o d Educación. ISBN: 978-84-673-6289-3.
87
Con e as, I., Fe nández, I., Lobo, B., Pé ez, S. and Pé ez, J. (2012). Ma emá icas, 4º
ESO. Edi o ial Ox o d Educación. ISBN: 978-84-673-7376-9.
R package engsocce da a [si io web]. [Consul a 10-05-2019]. Disponible en:
h ps://c an. -p ojec .o g/web/packages/engsocce da a/README.h ml
Rda ase s [si io web]. [Consul a 14-05-2019]. Disponible en:
h ps:// incen a elbundock.gi hub.io/Rda ase s/da ase s.h ml
Beeley, C. (2013). Web applica ion de elopmen wi h R using Shiny. Edi o ial Pack
Publishing. ISBN: 978-1-78328-447-4
O iedo, M. (2015). [en línea] Shiny: c ea una aplicación web in e ac i a desde R.
Disponible en: h ps:// pubs.com/mo iedo/Shiny
In oducción a R, R-commande y Shiny [si io web]. [Consul a 19-04-2019]. Disponible
en:
h p://knu h.uca.es/moodle/mod/lesson/ iew.php?id=2904&pageid=3662&s a las se
en=no
Re uel a, A. (2017). R como he amien a de apoyo a la ensenanza de Es adis ica en
Bachille a o. Disponible en: h p://u adoc.u a.es/handle/10324/31138.
C ohnD unc ion | R Documen a ion. [si io web]. [Consul a 16-05-2019]. Disponible en:
h ps://www. documen a ion.o g/packages/ obus base/ e sions/0.93-
4/ opics/C ohnD
Ruiz, M. (2004). Manual de Es adís icas. Disponible en:
h p://www.eumed.ne /cu secon/lib e ia/d m/d m-es ad.pd
Re e encias de las imágenes
Dado imagen animada [imagen]. [Consul a 09-05-2019]. Recupe ado de:
h p://www.gi sanimados.o g/img-dado-imagen-animada-0092-120792.h m
Goma de bo a imagen animada [imagen]. [Consul a 09-05-2019]. Recupe ado de:
h ps://www.pin e es .com.mx/pin/299278337716208592/?au ologin= ue
G a ico de sec o es imagen animada [imagen]. [Consul a 09-05-2019]. Recupe ado de:
h ps://www.gi mania.com/Gi -Animados-Obje os/Imagenes-Ma e ial-de-
O icina/G a icos/
88
Lanzamien o dados imagen animada [imagen]. [Consul a 09-05-2019] Recupe ado de:
h p://4.bp.blogspo .com/-
x8xgpNOMieQ/Vaj6Vi TP4I/AAAAAAAAABY/9qEM_leR w8/s1600/3a346b536b6a6 5d
e274bbb 7908ec0.jpg
Ma iz núme os imagen animada [imagen]. [Consul a 09-05-2019]. Recupe ado de:
h p://es.phoneky.com/gi -anima ions/?id=s2s165144
Pa o Donald P obabilidad imagen animada [imagen]. [Consul a 09-05-2019].
Recupe ado de: h ps://www.pin e es .es/pin/561120434805976182/
P obabilidad No mal imagen animada [imagen]. [Consul a 09-05-2019]. Recupe ado
de:
h ps://www.google.es/sea ch?biw=1517&bih=694& bm=isch&sa=1&ei=RX eXKDODs
Ugwe967-
wBQ&q=gi +p obabilidad+no mal&oq=gi +p obabilidad+no mal&gs_l=img.3...4330.84
04..8612...0.0..0.120.2322.4j18......1....1..gws-wiz-
img.......0j0i67j35i39j0i30j0i8i30.WEPpB5pddos#img c=u3nFJCbDNGV -M:
89
FIGURAS
Figu a 1: Pagina web p incipal de desca ga R .......................................................................... 17
Figu a 2: Ven ana p incipal RS udio ......................................................................................... 18
Figu a 3: Widge s básicos de Shiny .......................................................................................... 20
Figu a 4: Aplicación Shiny mínima ........................................................................................... 21
Figu a 5: Encabezado Aplicación Shiny Desc ipción Uni a ian e .............................................. 23
Figu a 6: Aplicación Shiny Desc ipción Uni a ian e, Ven ana elección a chi o ......................... 24
Figu a 7: Selección de da os ex e nos...................................................................................... 24
Figu a 8: Nomb e de la a iable .............................................................................................. 25
Figu a 9: Sepa ación obse aciones......................................................................................... 25
Figu a 10: Obse aciones a mos a ........................................................................................ 25
Figu a 11: Aplicación Shiny Desc ipción Uni a ian e, Ven ana elección de a iable ................. 26
Figu a 12: Selección de a iable .............................................................................................. 26
Figu a 13: Selección ipo de a iable ....................................................................................... 26
Figu a 14: Obse aciones a mos a ........................................................................................ 27
Figu a 15: Aplicación Shiny Desc ipción Uni a ian e, Ven ana Tabla de ecuencias ............... 27
Figu a 16: Núme o de in e alos ............................................................................................. 27
Figu a 17: De iniciones abla de ecuencias ............................................................................ 28
Figu a 18: Aplicación Shiny Desc ipción Uni a ian e, Ven ana Es adís icos .............................. 28
Figu a 19: Aplicación Shiny Desc ipción Uni a ian e, Ven ana G á icos ................................... 29
Figu a 20: Nume o clases del his og ama ................................................................................ 29
Figu a 21: Encabezado Aplicación Shiny Desc ipción Bi a ian e ............................................... 30
Figu a 22: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Elección de A chi o .................... 30
Figu a 23: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Elección Va iables ...................... 31
Figu a 24: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Dos a iables ca egó icas ........... 32
Figu a 25: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Dos a iables numé icas ............. 33
Figu a 26: Selec o es del núme o de in e alos ....................................................................... 33
Figu a 27: Opción mos a abla .............................................................................................. 34
Figu a 28: Rec a de eg esión .................................................................................................. 34
Figu a 29: Aplicación Shiny Desc ipción Bi a ian e, Ven ana Una a iable numé ica y una
ca egó ica ............................................................................................................................... 35
Figu a 30: Opción o ien ación g a ico de cajas ........................................................................ 35
Figu a 31: Encabezado Aplicación Shiny P obabilidad .............................................................. 36
Figu a 32: Aplicación Shiny P obabilidad, Ven ana P obabilidad .............................................. 36
Figu a 33: Aplicación Shiny P obabilidad, Ven ana binomial panel izquie do ........................... 37
Figu a 34: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 1 ........................ 38
Figu a 35: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 2 ........................ 38
Figu a 36: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 3 ....................... 38
Figu a 37: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 4 ........................ 39
Figu a 38: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 5 ........................ 39
Figu a 39: Aplicación Shiny P obabilidad, Ven ana binomial, panel p incipal 6........................ 39
Figu a 40: Aplicación Shiny P obabilidad, Ven ana Binomial, panel p incipal 7 ........................ 39
Figu a 41: Aplicación Shiny P obabilidad, Ven ana No mal, panel izquie do ............................ 40
Figu a 42: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 1.......................... 41
Figu a 43: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 2 .......................... 41
Figu a 44: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 3 .......................... 42
Figu a 45: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 4 .......................... 42
Figu a 46: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 5 .......................... 43
Figu a 47: Aplicación Shiny P obabilidad, Ven ana No mal, panel p incipal 6 .......................... 43
Figu a 48: Aplicación Shiny P obabilidad, Ven ana Ap oximación Binomial a No mal.............. 44