Punto 1 - Simulación Resultado de la Suma del Lanzamiento de dos Dados

a. Crear una función sin entradas pero que simule el lanzamiento de dos dados legales y sume el resultado de ellos.

sim_lanza=function(){
  dado1=1:6
  dado2=1:6
  x=sample(dado1,1)+sample(dado2,1)
  return(x)
}

sim_lanza()
## [1] 7

b. Generalizar la función para que tenga como entrada el total de lanzamientos y cuente los resultados de una condición en particular. (ejemplo suma igual a 12).

Opción 1

simula_multi_lanza=function(nlanza,valor_condi){
  
  lanzamientos=array(NA,nlanza)
  for(i in 1:nlanza){
    lanzamientos[i]=sim_lanza()
  }
  
  return(sum(lanzamientos==valor_condi))
  
}

simula_multi_lanza(nlanza = 500,valor_condi = 12)
## [1] 19

Opción 2

sim_multi_lanza2=function(n_lanza,valor_condi){
  dado1=1:6
  dado2=1:6
  x=sample(dado1,size = n_lanza,replace = TRUE)+sample(dado2,size = n_lanza,replace = TRUE)
  return(sum(x==valor_condi))
}

sim_multi_lanza2(n_lanza = 500,valor_condi = 12)
## [1] 11

c. Con la función de b. compare los resultados de la simulación para 1000 lanzamientos con los resultados esperados de acuerdo a la probabilidad calculada con el total de combinaciones.

Probabilidad Teórica

dado1=1:6
dado2=1:6

espacio=expand.grid(dado1,dado2)
y=apply(espacio,1,sum)
data.frame(espacio,y)
Var1 Var2 y
1 1 2
2 1 3
3 1 4
4 1 5
5 1 6
6 1 7
1 2 3
2 2 4
3 2 5
4 2 6
5 2 7
6 2 8
1 3 4
2 3 5
3 3 6
4 3 7
5 3 8
6 3 9
1 4 5
2 4 6
3 4 7
4 4 8
5 4 9
6 4 10
1 5 6
2 5 7
3 5 8
4 5 9
5 5 10
6 5 11
1 6 7
2 6 8
3 6 9
4 6 10
5 6 11
6 6 12
prob_teorica=table(y)/36
prob_teorica
## y
##          2          3          4          5          6          7          8 
## 0.02777778 0.05555556 0.08333333 0.11111111 0.13888889 0.16666667 0.13888889 
##          9         10         11         12 
## 0.11111111 0.08333333 0.05555556 0.02777778

Gráfica de la probabilidad Teórica

plot(2:12,prob_teorica,type = "b")

Probabilidad calculada cuando el valor de la suma de los dados es 5 para mil lanzamientos

sim_multi_lanza2(n_lanza = 1000,valor_condi = 5)/1000
## [1] 0.114

El resultado de la probabilidad teórica es de 0.111 y el de la probabilidad calculada es de 0.106 quedando por debajo un 4.5%

Punto 2 - Simulación Concepto de Distribución Muestral (Caso proporciones)

a. Genere una población con una cantidad dada de 0 y 1.

Población de 1000 con 10% de números iguales a 1

pob=c(rep(x = 1,100),rep(x = 0,900))

pob
##    [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
##   [38] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
##   [75] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
##  [112] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [149] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [186] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [223] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [260] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [297] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [334] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [371] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [408] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [445] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [482] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [519] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [556] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [593] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [630] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [667] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [704] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [741] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [778] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [815] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [852] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [889] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [926] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
##  [963] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
## [1000] 0

b. Crear una función que obtenga una muestra de esa población de a. y calcule el porcentaje de 1.

Creamos una muestra de tamaño igual a 200

sum(sample(pob,size = 200))/200
## [1] 0.14

c. Repita este proceso una cantidad (mas de 1000 veces) y guarde los porcentajes de cada iteración.

Opción 1

porcentajes_muestra=array(NA,1000)
for(i in 1:1000){
  pob=c(rep(x = 1,100),rep(x = 0,900))
  porcentajes_muestra[i]=sum(sample(pob,size = 200))/200
}

porcentajes_muestra
##    [1] 0.120 0.080 0.090 0.065 0.095 0.080 0.075 0.125 0.105 0.095 0.095 0.080
##   [13] 0.105 0.070 0.120 0.120 0.140 0.085 0.105 0.105 0.110 0.090 0.120 0.100
##   [25] 0.145 0.095 0.105 0.085 0.100 0.125 0.145 0.085 0.080 0.105 0.105 0.110
##   [37] 0.095 0.120 0.110 0.080 0.100 0.100 0.090 0.100 0.085 0.115 0.115 0.110
##   [49] 0.110 0.075 0.090 0.120 0.100 0.115 0.075 0.095 0.105 0.100 0.080 0.105
##   [61] 0.115 0.070 0.100 0.085 0.090 0.100 0.120 0.105 0.065 0.075 0.095 0.080
##   [73] 0.080 0.085 0.105 0.105 0.075 0.075 0.095 0.105 0.085 0.090 0.115 0.080
##   [85] 0.095 0.070 0.120 0.110 0.090 0.125 0.090 0.075 0.110 0.105 0.155 0.115
##   [97] 0.085 0.115 0.120 0.050 0.115 0.070 0.100 0.130 0.105 0.090 0.090 0.100
##  [109] 0.075 0.110 0.120 0.085 0.120 0.105 0.125 0.105 0.110 0.105 0.080 0.110
##  [121] 0.105 0.075 0.090 0.090 0.100 0.105 0.120 0.080 0.105 0.095 0.065 0.080
##  [133] 0.125 0.120 0.100 0.100 0.115 0.100 0.140 0.110 0.090 0.100 0.085 0.110
##  [145] 0.110 0.080 0.095 0.085 0.120 0.115 0.085 0.110 0.125 0.095 0.125 0.080
##  [157] 0.100 0.125 0.110 0.095 0.095 0.105 0.110 0.100 0.080 0.070 0.070 0.095
##  [169] 0.110 0.100 0.100 0.125 0.120 0.100 0.100 0.090 0.085 0.120 0.080 0.065
##  [181] 0.075 0.110 0.105 0.105 0.100 0.090 0.130 0.095 0.075 0.105 0.075 0.105
##  [193] 0.100 0.110 0.130 0.105 0.115 0.080 0.105 0.105 0.105 0.085 0.110 0.070
##  [205] 0.090 0.120 0.090 0.130 0.090 0.080 0.095 0.090 0.125 0.145 0.115 0.085
##  [217] 0.090 0.110 0.090 0.085 0.125 0.075 0.075 0.075 0.125 0.105 0.090 0.105
##  [229] 0.080 0.095 0.115 0.100 0.105 0.105 0.105 0.110 0.105 0.100 0.085 0.130
##  [241] 0.080 0.115 0.100 0.075 0.100 0.060 0.110 0.085 0.075 0.070 0.105 0.060
##  [253] 0.090 0.085 0.105 0.075 0.090 0.115 0.090 0.085 0.090 0.115 0.120 0.135
##  [265] 0.090 0.090 0.095 0.110 0.110 0.095 0.080 0.105 0.110 0.105 0.125 0.125
##  [277] 0.075 0.070 0.105 0.105 0.100 0.080 0.085 0.105 0.115 0.100 0.075 0.075
##  [289] 0.090 0.120 0.090 0.090 0.105 0.080 0.110 0.105 0.110 0.075 0.100 0.105
##  [301] 0.150 0.095 0.085 0.075 0.085 0.100 0.095 0.085 0.090 0.075 0.095 0.130
##  [313] 0.120 0.100 0.105 0.085 0.095 0.120 0.100 0.120 0.090 0.105 0.110 0.130
##  [325] 0.110 0.100 0.100 0.070 0.095 0.095 0.085 0.075 0.100 0.070 0.100 0.075
##  [337] 0.110 0.085 0.100 0.090 0.125 0.075 0.120 0.130 0.095 0.110 0.095 0.075
##  [349] 0.100 0.100 0.090 0.085 0.075 0.100 0.100 0.125 0.090 0.095 0.090 0.100
##  [361] 0.100 0.120 0.095 0.115 0.070 0.125 0.115 0.115 0.085 0.120 0.075 0.135
##  [373] 0.065 0.125 0.090 0.090 0.085 0.110 0.130 0.125 0.105 0.125 0.110 0.105
##  [385] 0.100 0.110 0.115 0.105 0.120 0.115 0.100 0.070 0.090 0.095 0.050 0.065
##  [397] 0.105 0.090 0.085 0.175 0.115 0.100 0.090 0.090 0.080 0.095 0.120 0.100
##  [409] 0.075 0.090 0.110 0.075 0.105 0.085 0.120 0.140 0.095 0.105 0.125 0.115
##  [421] 0.090 0.105 0.130 0.150 0.075 0.100 0.105 0.115 0.120 0.095 0.115 0.080
##  [433] 0.125 0.080 0.100 0.095 0.085 0.095 0.085 0.115 0.095 0.110 0.075 0.105
##  [445] 0.085 0.100 0.085 0.075 0.095 0.095 0.090 0.085 0.115 0.090 0.100 0.095
##  [457] 0.125 0.130 0.090 0.090 0.130 0.125 0.125 0.095 0.090 0.110 0.110 0.095
##  [469] 0.115 0.100 0.100 0.080 0.050 0.100 0.120 0.105 0.125 0.070 0.120 0.110
##  [481] 0.080 0.095 0.095 0.130 0.085 0.135 0.095 0.110 0.115 0.095 0.100 0.090
##  [493] 0.130 0.115 0.120 0.080 0.130 0.110 0.110 0.105 0.110 0.120 0.080 0.090
##  [505] 0.090 0.095 0.090 0.100 0.070 0.125 0.105 0.100 0.095 0.110 0.060 0.115
##  [517] 0.065 0.125 0.080 0.125 0.090 0.105 0.095 0.120 0.105 0.105 0.100 0.115
##  [529] 0.100 0.090 0.100 0.065 0.090 0.105 0.130 0.100 0.065 0.110 0.145 0.110
##  [541] 0.120 0.100 0.100 0.075 0.090 0.115 0.110 0.065 0.105 0.100 0.120 0.110
##  [553] 0.105 0.065 0.085 0.095 0.095 0.080 0.095 0.105 0.095 0.105 0.100 0.110
##  [565] 0.090 0.080 0.115 0.120 0.115 0.100 0.115 0.085 0.095 0.090 0.105 0.065
##  [577] 0.090 0.120 0.135 0.125 0.120 0.085 0.085 0.090 0.090 0.065 0.120 0.115
##  [589] 0.100 0.115 0.120 0.085 0.105 0.085 0.095 0.095 0.125 0.075 0.095 0.135
##  [601] 0.120 0.070 0.095 0.075 0.110 0.115 0.105 0.110 0.120 0.130 0.070 0.125
##  [613] 0.120 0.070 0.125 0.105 0.065 0.085 0.090 0.095 0.130 0.085 0.130 0.075
##  [625] 0.105 0.090 0.115 0.100 0.145 0.095 0.065 0.085 0.085 0.095 0.120 0.120
##  [637] 0.090 0.075 0.080 0.145 0.125 0.125 0.110 0.075 0.085 0.120 0.085 0.100
##  [649] 0.100 0.075 0.095 0.080 0.110 0.070 0.090 0.120 0.095 0.080 0.100 0.095
##  [661] 0.085 0.055 0.115 0.095 0.135 0.080 0.115 0.125 0.100 0.090 0.085 0.065
##  [673] 0.140 0.125 0.100 0.095 0.110 0.135 0.105 0.100 0.100 0.095 0.105 0.100
##  [685] 0.100 0.095 0.130 0.075 0.140 0.090 0.085 0.080 0.115 0.135 0.115 0.110
##  [697] 0.090 0.100 0.080 0.085 0.120 0.075 0.075 0.130 0.065 0.095 0.065 0.105
##  [709] 0.115 0.090 0.085 0.110 0.070 0.115 0.105 0.110 0.075 0.085 0.085 0.075
##  [721] 0.065 0.085 0.115 0.120 0.135 0.140 0.125 0.125 0.070 0.120 0.095 0.090
##  [733] 0.090 0.110 0.155 0.100 0.130 0.125 0.100 0.125 0.075 0.060 0.115 0.100
##  [745] 0.105 0.100 0.120 0.080 0.120 0.115 0.120 0.085 0.090 0.115 0.070 0.110
##  [757] 0.080 0.090 0.090 0.120 0.090 0.105 0.115 0.085 0.085 0.120 0.080 0.100
##  [769] 0.105 0.085 0.070 0.090 0.130 0.090 0.085 0.110 0.085 0.140 0.085 0.090
##  [781] 0.080 0.085 0.105 0.090 0.130 0.115 0.110 0.085 0.090 0.110 0.090 0.140
##  [793] 0.100 0.070 0.075 0.095 0.080 0.075 0.100 0.115 0.070 0.065 0.100 0.110
##  [805] 0.095 0.130 0.110 0.095 0.120 0.095 0.135 0.100 0.110 0.100 0.070 0.090
##  [817] 0.080 0.085 0.115 0.080 0.080 0.125 0.085 0.080 0.055 0.090 0.100 0.115
##  [829] 0.090 0.150 0.120 0.065 0.085 0.080 0.090 0.115 0.050 0.110 0.115 0.135
##  [841] 0.090 0.075 0.050 0.120 0.110 0.110 0.105 0.105 0.070 0.060 0.070 0.080
##  [853] 0.085 0.095 0.105 0.110 0.090 0.135 0.075 0.105 0.110 0.105 0.110 0.115
##  [865] 0.120 0.100 0.095 0.100 0.110 0.055 0.090 0.090 0.115 0.105 0.125 0.085
##  [877] 0.040 0.135 0.120 0.080 0.095 0.120 0.110 0.105 0.095 0.080 0.075 0.105
##  [889] 0.105 0.120 0.100 0.115 0.130 0.090 0.095 0.110 0.150 0.125 0.065 0.145
##  [901] 0.145 0.100 0.105 0.095 0.090 0.105 0.125 0.115 0.080 0.130 0.130 0.115
##  [913] 0.085 0.115 0.090 0.090 0.110 0.080 0.110 0.125 0.110 0.085 0.095 0.135
##  [925] 0.100 0.085 0.135 0.090 0.100 0.095 0.090 0.065 0.105 0.105 0.110 0.095
##  [937] 0.095 0.100 0.085 0.110 0.110 0.100 0.100 0.120 0.075 0.075 0.125 0.095
##  [949] 0.075 0.105 0.105 0.115 0.110 0.110 0.100 0.090 0.070 0.075 0.110 0.115
##  [961] 0.100 0.070 0.070 0.105 0.090 0.120 0.115 0.095 0.100 0.130 0.105 0.070
##  [973] 0.125 0.105 0.100 0.080 0.095 0.105 0.115 0.115 0.075 0.120 0.105 0.100
##  [985] 0.065 0.130 0.080 0.085 0.075 0.090 0.095 0.075 0.055 0.075 0.105 0.090
##  [997] 0.090 0.120 0.130 0.085

Opción 2

calc_por_uno=function(n_muestra){
  pob=c(rep(x = 1,100),rep(x = 0,900))
  return(sum(sample(pob,size = n_muestra))/n_muestra)
}

calc_por_uno(n_muestra = 200)
## [1] 0.09
sapply(rep(200,1000), calc_por_uno)
##    [1] 0.090 0.165 0.110 0.125 0.110 0.125 0.100 0.105 0.120 0.095 0.105 0.110
##   [13] 0.115 0.130 0.115 0.095 0.115 0.095 0.135 0.105 0.085 0.105 0.100 0.090
##   [25] 0.085 0.115 0.085 0.110 0.105 0.105 0.110 0.085 0.075 0.095 0.135 0.055
##   [37] 0.125 0.125 0.100 0.100 0.100 0.065 0.090 0.115 0.085 0.090 0.120 0.095
##   [49] 0.095 0.090 0.120 0.115 0.070 0.150 0.135 0.085 0.105 0.065 0.100 0.060
##   [61] 0.110 0.120 0.110 0.070 0.120 0.080 0.085 0.110 0.125 0.115 0.075 0.080
##   [73] 0.105 0.115 0.075 0.090 0.075 0.105 0.090 0.095 0.095 0.085 0.100 0.095
##   [85] 0.085 0.075 0.105 0.110 0.105 0.055 0.090 0.095 0.120 0.115 0.075 0.135
##   [97] 0.090 0.100 0.105 0.085 0.085 0.090 0.085 0.105 0.090 0.070 0.080 0.110
##  [109] 0.090 0.100 0.100 0.060 0.075 0.125 0.130 0.075 0.160 0.115 0.120 0.145
##  [121] 0.085 0.120 0.105 0.085 0.135 0.140 0.110 0.100 0.130 0.100 0.100 0.085
##  [133] 0.070 0.110 0.090 0.085 0.080 0.120 0.085 0.095 0.075 0.105 0.110 0.080
##  [145] 0.095 0.095 0.110 0.075 0.110 0.065 0.075 0.075 0.115 0.120 0.120 0.090
##  [157] 0.095 0.125 0.110 0.100 0.105 0.085 0.085 0.100 0.105 0.105 0.085 0.085
##  [169] 0.090 0.075 0.070 0.065 0.100 0.110 0.115 0.110 0.085 0.080 0.090 0.125
##  [181] 0.095 0.100 0.090 0.130 0.060 0.125 0.050 0.110 0.095 0.100 0.125 0.150
##  [193] 0.115 0.095 0.075 0.105 0.105 0.070 0.115 0.090 0.095 0.105 0.100 0.105
##  [205] 0.105 0.080 0.080 0.135 0.100 0.095 0.080 0.135 0.085 0.110 0.075 0.120
##  [217] 0.090 0.095 0.115 0.135 0.130 0.080 0.115 0.100 0.090 0.075 0.100 0.090
##  [229] 0.080 0.095 0.090 0.095 0.120 0.095 0.135 0.100 0.095 0.135 0.120 0.110
##  [241] 0.120 0.125 0.120 0.090 0.100 0.095 0.090 0.095 0.115 0.105 0.105 0.105
##  [253] 0.125 0.090 0.085 0.095 0.090 0.130 0.100 0.100 0.065 0.100 0.110 0.090
##  [265] 0.075 0.055 0.115 0.085 0.085 0.115 0.095 0.090 0.100 0.090 0.115 0.090
##  [277] 0.090 0.065 0.150 0.080 0.100 0.090 0.105 0.085 0.095 0.125 0.110 0.095
##  [289] 0.110 0.090 0.145 0.105 0.090 0.100 0.120 0.100 0.095 0.080 0.105 0.090
##  [301] 0.090 0.105 0.090 0.110 0.100 0.090 0.100 0.065 0.065 0.120 0.105 0.185
##  [313] 0.105 0.070 0.090 0.120 0.115 0.100 0.090 0.095 0.100 0.100 0.070 0.110
##  [325] 0.105 0.070 0.100 0.085 0.075 0.075 0.130 0.130 0.090 0.115 0.090 0.110
##  [337] 0.085 0.090 0.115 0.105 0.125 0.095 0.090 0.105 0.105 0.090 0.095 0.060
##  [349] 0.130 0.065 0.080 0.100 0.155 0.115 0.065 0.140 0.100 0.085 0.100 0.130
##  [361] 0.110 0.095 0.100 0.100 0.105 0.100 0.125 0.090 0.085 0.110 0.085 0.115
##  [373] 0.120 0.095 0.075 0.120 0.120 0.110 0.085 0.105 0.115 0.065 0.105 0.110
##  [385] 0.085 0.085 0.130 0.105 0.135 0.095 0.075 0.110 0.095 0.105 0.090 0.085
##  [397] 0.070 0.110 0.115 0.085 0.090 0.105 0.090 0.085 0.110 0.120 0.095 0.115
##  [409] 0.105 0.085 0.100 0.105 0.105 0.085 0.085 0.120 0.115 0.100 0.095 0.095
##  [421] 0.130 0.095 0.110 0.100 0.130 0.120 0.075 0.120 0.105 0.130 0.080 0.095
##  [433] 0.100 0.080 0.135 0.100 0.100 0.105 0.135 0.095 0.120 0.120 0.120 0.090
##  [445] 0.110 0.115 0.065 0.085 0.120 0.095 0.080 0.080 0.065 0.100 0.105 0.115
##  [457] 0.075 0.115 0.080 0.110 0.110 0.120 0.105 0.100 0.140 0.085 0.120 0.135
##  [469] 0.110 0.095 0.105 0.075 0.105 0.070 0.095 0.100 0.105 0.070 0.070 0.090
##  [481] 0.120 0.090 0.090 0.125 0.090 0.080 0.095 0.115 0.090 0.095 0.065 0.115
##  [493] 0.070 0.075 0.115 0.095 0.115 0.065 0.105 0.075 0.095 0.095 0.130 0.125
##  [505] 0.090 0.095 0.100 0.170 0.075 0.090 0.115 0.105 0.085 0.105 0.090 0.130
##  [517] 0.095 0.085 0.075 0.105 0.090 0.100 0.110 0.075 0.090 0.140 0.055 0.105
##  [529] 0.095 0.075 0.110 0.115 0.100 0.075 0.075 0.110 0.140 0.135 0.100 0.095
##  [541] 0.125 0.125 0.105 0.095 0.085 0.095 0.095 0.085 0.080 0.135 0.100 0.130
##  [553] 0.080 0.095 0.080 0.095 0.085 0.090 0.125 0.120 0.125 0.120 0.115 0.080
##  [565] 0.095 0.080 0.110 0.120 0.060 0.095 0.105 0.105 0.090 0.125 0.115 0.110
##  [577] 0.060 0.105 0.100 0.105 0.105 0.080 0.095 0.120 0.100 0.080 0.110 0.100
##  [589] 0.110 0.095 0.075 0.090 0.095 0.110 0.095 0.100 0.100 0.110 0.130 0.115
##  [601] 0.125 0.130 0.105 0.095 0.095 0.080 0.110 0.095 0.115 0.105 0.095 0.105
##  [613] 0.080 0.065 0.090 0.100 0.145 0.070 0.105 0.115 0.080 0.075 0.105 0.075
##  [625] 0.120 0.080 0.105 0.120 0.060 0.095 0.090 0.120 0.125 0.095 0.100 0.095
##  [637] 0.080 0.105 0.100 0.115 0.085 0.105 0.070 0.085 0.090 0.090 0.115 0.120
##  [649] 0.110 0.130 0.085 0.085 0.085 0.120 0.125 0.080 0.080 0.120 0.100 0.125
##  [661] 0.090 0.110 0.100 0.110 0.095 0.100 0.115 0.115 0.120 0.080 0.090 0.100
##  [673] 0.100 0.095 0.105 0.095 0.125 0.095 0.075 0.100 0.090 0.100 0.085 0.075
##  [685] 0.085 0.130 0.095 0.125 0.110 0.080 0.115 0.115 0.115 0.080 0.100 0.075
##  [697] 0.125 0.090 0.085 0.110 0.070 0.110 0.125 0.085 0.100 0.095 0.090 0.085
##  [709] 0.125 0.125 0.140 0.110 0.095 0.120 0.100 0.070 0.080 0.125 0.065 0.085
##  [721] 0.110 0.120 0.060 0.105 0.100 0.140 0.085 0.135 0.120 0.090 0.105 0.110
##  [733] 0.085 0.080 0.090 0.110 0.080 0.095 0.115 0.080 0.120 0.055 0.115 0.095
##  [745] 0.100 0.105 0.080 0.120 0.095 0.075 0.125 0.105 0.120 0.110 0.065 0.075
##  [757] 0.075 0.085 0.125 0.105 0.075 0.110 0.100 0.110 0.135 0.095 0.100 0.115
##  [769] 0.125 0.100 0.115 0.080 0.075 0.120 0.115 0.105 0.085 0.115 0.065 0.090
##  [781] 0.135 0.070 0.105 0.080 0.095 0.105 0.080 0.095 0.100 0.135 0.075 0.095
##  [793] 0.130 0.105 0.085 0.095 0.100 0.085 0.095 0.055 0.105 0.090 0.120 0.085
##  [805] 0.090 0.085 0.105 0.075 0.085 0.120 0.115 0.090 0.100 0.105 0.090 0.120
##  [817] 0.060 0.095 0.125 0.120 0.115 0.075 0.100 0.125 0.095 0.075 0.130 0.090
##  [829] 0.080 0.105 0.105 0.120 0.105 0.140 0.045 0.080 0.075 0.090 0.135 0.130
##  [841] 0.105 0.080 0.105 0.105 0.100 0.120 0.090 0.095 0.115 0.085 0.090 0.080
##  [853] 0.075 0.120 0.125 0.155 0.080 0.090 0.090 0.095 0.110 0.095 0.105 0.120
##  [865] 0.110 0.090 0.120 0.130 0.095 0.110 0.150 0.115 0.125 0.115 0.115 0.115
##  [877] 0.090 0.150 0.105 0.150 0.105 0.095 0.080 0.135 0.090 0.105 0.115 0.125
##  [889] 0.090 0.105 0.090 0.095 0.070 0.050 0.075 0.095 0.100 0.085 0.080 0.110
##  [901] 0.085 0.105 0.085 0.085 0.080 0.080 0.125 0.115 0.090 0.105 0.095 0.060
##  [913] 0.105 0.060 0.090 0.100 0.100 0.100 0.105 0.095 0.085 0.100 0.110 0.105
##  [925] 0.100 0.115 0.100 0.070 0.075 0.085 0.130 0.110 0.095 0.095 0.095 0.095
##  [937] 0.105 0.135 0.090 0.115 0.115 0.080 0.115 0.105 0.065 0.080 0.085 0.135
##  [949] 0.135 0.105 0.120 0.095 0.090 0.090 0.075 0.095 0.125 0.120 0.115 0.080
##  [961] 0.090 0.060 0.100 0.160 0.130 0.055 0.090 0.085 0.085 0.110 0.090 0.060
##  [973] 0.085 0.085 0.090 0.070 0.090 0.110 0.100 0.120 0.130 0.145 0.110 0.095
##  [985] 0.090 0.060 0.095 0.110 0.110 0.100 0.095 0.115 0.095 0.100 0.120 0.080
##  [997] 0.105 0.105 0.140 0.110

d. Grafique los resultados de estos porcentajes y calcule algunos indicadores descriptivos (compare los resultados con la población generada inicial).

Indicadores descriptivos

summary(porcentajes_muestra)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## 0.04000 0.08500 0.10000 0.09968 0.11500 0.17500

Gráfica de resultados

hist(porcentajes_muestra)
abline(v=0.1,col="blue",lwd=3)

Punto 3 - Función que Calcula Descriptivos Univariados

a. Genere una función que calcule indicadores y graficos descriptivos de una variable cuantitativa.

Cuantitativa <- function(base, columnas) {
  
  base <- as.data.frame(base)
  
  nombres <- names(base)
  
  lista <- list()
  
  for(i in columnas) {
    
    n <- length(na.omit(base[,i]))
    media <- mean(base[,i], na.rm = T)
    des <- sd(base[,i], na.rm = T)
    mi <- min(base[,i], na.rm = T)
    ma <- max(base[,i], na.rm = T)
        lista[[i]] <- data.frame(Variable = nombres[i],
                         n = n,
                         Media = round(media,2),
                         Desviacion = round(des,2),
                         Minimo = round(mi,2),
                         Maximo = round(ma,2)
                         )
  }
  
  tabla <- do.call(rbind, lista)
  for (i in columnas) {
    hist(base[[i]], ylab= "Frecuencia",xlab= nombres[i], main= c("Histograma ",nombres[i]) , col = "dodgerblue4")  
  }
  return(tabla)
}
library(readxl)
base_rotacion <- read_excel("C:/ALL/Personal/Maestria/Datos_Rotacion.xlsx")

Cuantitativa(base_rotacion,columnas= c(2,13,14,21))
Variable n Media Desviacion Minimo Maximo
Edad 1470 36.92 9.14 18 60
Ingreso_Mensual 1470 6502.93 4707.96 1009 19999
Trabajos_Anteriores 1470 2.69 2.50 0 9
Antigüedad 1470 7.01 6.13 0 40

b. Genere una función que calcule indicadores y graficos descriptivos de una variable cualitativa.

Cualitativa = function(datos, columna){
  barplot(table(datos[[columna]]),xlab = columna, ylab="Cantidad", col="gold3", main=c("Gráfico de Barras ",columna))
  tabla = data.frame(prop.table(table(datos[[columna]])))
  t = data.frame(table(datos[[columna]]))
  t$Porcentaje =tabla$Freq
  colnames(t) = c("Variable", "Cantidad", "Porcentaje")
  return(t)
}

Análisis variable Estado civil de la base de rotación

Cualitativa(base_rotacion,"Estado_Civil")
Variable Cantidad Porcentaje
Casado 673 0.4578231
Divorciado 327 0.2224490
Soltero 470 0.3197279

Análisis variable Viajes de Negocios de la base de rotación

Cualitativa(base_rotacion,"Viaje de Negocios")
Variable Cantidad Porcentaje
Frecuentemente 277 0.1884354
No_Viaja 150 0.1020408
Raramente 1043 0.7095238

c. Genere una función que de acuerdo al tipo de variable use la función de a. ó b. para generar resultados descriptivos.

Descriptivos <- function(x,columna) {
  tipo = typeof(x[[columna]])
  if (tipo %in% c("character","factor","logical")){resultado=Cualitativa(x,columna)}
  
  else if(tipo %in% c("double","integer","numeric")) {resultado=Cuantitativa(x,columna)}
  
  else {
    resultado = "Revisar - Variable sin clasificar"
  }
  
  return(resultado)
  
}

Prueba de la función con una variable cuantitativa - Edad

Descriptivos(base_rotacion,"Edad")
Variable n Media Desviacion Minimo Maximo
Edad NA 1470 36.92 9.14 18 60

Prueba de la función con una variable cuantitativa - Estado Civil

Descriptivos(base_rotacion,"Estado_Civil")
Variable Cantidad Porcentaje
Casado 673 0.4578231
Divorciado 327 0.2224490
Soltero 470 0.3197279