Este nuevo trabajo corresponde a los ejercicios N°2 de la asignatura Estadistica computacional de la Universidad de Santiago de Chile

Primera parte

Número 1:

Se pide instalar los datos: gtools e incluir la libreria correspondiente

"install.packages(′gtools′)"
## [1] "install.packages('gtools')"
(library(gtools))
## [1] "gtools"    "stats"     "graphics"  "grDevices" "utils"     "datasets" 
## [7] "methods"   "base"

A continuación se explican las diferencias entre permutación y combinación

La principal diferencia es que para el caso de la permutación se buscan diferentes maneras para organizar u ordenar un conjuntos de elementos, en cambio, para el caso de las combinaciones se buscan las diferentes maneras de escoger o elegir un objeto de un conjuntos de objetos, sin considerar el orden de estos objetos, entonces para la permutación si importa el orden de los objetos o conjuntos y para la combinación el orden no importa en lo absoluto

Se procede a la explicación de las funciones “combiantions” y “Permutations” que ofrece el paquete de datos que anteriormente se instaló

El caso de la función combinations se usa para enumeras las combinaciones posibles de elementos, con un tamaño determinado, dentro de un vector.

Ahora para el caso de la función permutations se usa para enumeras las posibles permutaciones de los elementos, tambien con un tamaño determinado y dentro de un vector.

Ambas funciones tienen el mismo domio para su correcta implementción, un número “n” el cual corresponde al tamaño del vector principal, un número “r” que corresponde al tamaño de las combinaciones o permutaciones y 2 banderas o etiquetas logicas, “set”, donde indica si puede haber repetición de elementos dentro del vector original y “repeats.allowed”, que por el contrario permite o no si pueden haber elementos duplicados en el nuevo vector. Por otra parte, ambas funciones retornan una matriz con los resultados y una fila inicial con el parametro r

En la siguiente sección se calcularan combinaciones y permutaciones, ya sean con repetición o sin repetición, dependiendo de cada caso.

Calcular La cantidad de permutaciones posibles con n = 14 y r = 4 con y sin repetición.

permutacion_repe= permutations(14, 4, set= FALSE, repeats.allowed= TRUE)
permutacion_sin_repe= permutations(14, 4, v= 1:14, set=FALSE, repeats.allowed= FALSE)
print(nrow(permutacion_repe))
## [1] 38416
print(nrow(permutacion_sin_repe))
## [1] 24024

Calcular las combinaciones de largo tres con las letras a, b y c con y sin repetición

letras=c ("a", "b", "c")
combi_repe= combinations(length(letras), 3, letras, set= FALSE, repeats.allowed= TRUE)
combi_sinrepe= combinations(length(letras), 3, letras, repeats.allowed= FALSE)
print(combi_repe)
##       [,1] [,2] [,3]
##  [1,] "a"  "a"  "a" 
##  [2,] "a"  "a"  "b" 
##  [3,] "a"  "a"  "c" 
##  [4,] "a"  "b"  "b" 
##  [5,] "a"  "b"  "c" 
##  [6,] "a"  "c"  "c" 
##  [7,] "b"  "b"  "b" 
##  [8,] "b"  "b"  "c" 
##  [9,] "b"  "c"  "c" 
## [10,] "c"  "c"  "c"
print(combi_sinrepe)
##      [,1] [,2] [,3]
## [1,] "a"  "b"  "c"

Calcular la cantidad de permutaciones y combinaciones con n = 30 y r = 2 sin repetición.

permutacion_sinrepe= permutations(30,2)

combinacion_sinrepe= combinations(30, 2)

print(nrow(permutacion_sinrepe))
## [1] 870
print(nrow(combinacion_sinrepe))
## [1] 435

Se pide crear una función para calcular la probabilidad de A dado B

Bayes = function(PBA, PA, PB) {
  
  (PAB*PA)/PB
}

A continuación se usara el teorema de bayes para realizar calculos de distintas probabilidades y/o porcentaje. Para todos estos calculos se utilizará el conjuntos de datos “Titanic”

Ejercicio 1

Calcular el porcentaje de sobrevivencia de los pasajeros y de la tripulación, posteriormente determinar cual porcentaje es mayor
datos = apply(Titanic, c(1,4), sum)

datos
##       Survived
## Class   No Yes
##   1st  122 203
##   2nd  167 118
##   3rd  528 178
##   Crew 673 212
P_pasajeros= ((sum(datos[5:7]))/(sum(datos[1:3], datos[5:7]))) * 100

P_tripulación= 100 * ((datos[8])/(sum(datos[4], datos[8])))

P_pasajeros
## [1] 37.91793
P_tripulación
## [1] 23.9548
Para este caso el porcentaje de los pasajeros corresponde a todos los pasajeros subrevivientes divido en el total de pasajeros. Para el caso de la tripulación se sigue el mismo procedimiento. Con estos resultados se puede observar que el porcentaje de sobrevivencia de los pasajeros es mayor que el de la tripulación

Ejercicio 2

Ahora se pide calcular la probabilidad de que una mujer de la tripulación sobreviva
datos = apply(Titanic, c(1,2,4), sum)

datos
## , , Survived = No
## 
##       Sex
## Class  Male Female
##   1st   118      4
##   2nd   154     13
##   3rd   422    106
##   Crew  670      3
## 
## , , Survived = Yes
## 
##       Sex
## Class  Male Female
##   1st    62    141
##   2nd    25     93
##   3rd    88     90
##   Crew  192     20
P_mujer= (sum(datos[16]))/(sum(datos[8], datos[16]))

P_mujer
## [1] 0.8695652
Para este ejercicio se toma como universo el total de mujeres de la tripulación, entoces para sacar la probabilidad pedida se procede a calcular el total de mujeres de la tripulación que sobreviven dividido en el total de mujeres de la tripulación .

Ejercicio 3

Ahora se pide calcular la probabilidad de que un(a) menor de edad sobreviva en tercera clase
datos = apply(Titanic, c(1,3,4), sum)

datos
## , , Survived = No
## 
##       Age
## Class  Child Adult
##   1st      0   122
##   2nd      0   167
##   3rd     52   476
##   Crew     0   673
## 
## , , Survived = Yes
## 
##       Age
## Class  Child Adult
##   1st      6   197
##   2nd     24    94
##   3rd     27   151
##   Crew     0   212
P_menor_de_edad= (sum(datos[11]))/(sum(datos[3], datos[11]))

P_menor_de_edad
## [1] 0.3417722
Para este ejercicio se toma como universo el total de menores de edad que pertenecen a la 3era clase de pasajeros, entoces para sacar la probabilidad pedida se procede a calcular el total de menores de edad que sobreviven en 3ra clase, dividido en el universo ya antes mencionado.

Ejercicio 4

Ahora se pide determinar si en general se cumple el código “mujeres y niños(as) primero”
Para este ejercicio en primera instancia se calculará la probabilidad de sobrevivencia de las mujeres en general y el de los menores de edad, para luego multiplicar estas probabilidades y ese producto compararlo con la probabilidad de sobrevivencia de los hombres, para asi poder determinar si se cumple o no el código de “mujeres y niños primeros”
datos= apply(Titanic, c(2,3,4), sum)
P_mujeres= (sum(datos[8]))/(sum(datos[8], datos[4]))
P_nignos= (sum(datos[5:6]))/(sum(datos[1:2], datos[5:6]))
P_hombres= (sum(datos[7]))/(sum(datos[7], datos[3]))
P_nignos_y_mujeres = P_mujeres * P_nignos 

P_mujeres
## [1] 0.7435294
P_nignos
## [1] 0.5229358
P_hombres
## [1] 0.2027594
P_nignos_y_mujeres
## [1] 0.3888181
Como se puede observar, el producto de las probabilidades de que las mujeres y menores de edad sobrevivan es mayor a la probabiliadad de que los hombres sobrevivan, es por esto que se puede determinar que en este caso se cumple en general el código de “niños y mujeres primeros”.
Nota: Para el calculo de mujeres solo se tomaron en cuenta a las mujeres adultas, el caso de las mujeres niñas se tomaron en cuenta para el calculo de menores de edad

Ejercicio 5

Se pide determinar lo mismo que el ejercicio anterior, pero ahora se debe hacer sobre una clase en vez de en general, dicha clase se va a elegir aleatoriamente con la función sample
set.seed(100)
sample((apply(Titanic, c(1), sum)), 1)
## 2nd 
## 285
Se escoje una clase aleatoriamente pero se ocupa la función set.seed para que esa clase aleatoria salga 100 veces, para que al momento de calcular las probabilidades los datos no vayan a cambiar
datos= apply(Titanic, c(1, 2, 3, 4), sum)
P_mujer = (sum(datos[30]))/(sum(datos[30], datos[14]))
P_nignos = (sum(datos[18],datos[22]))/(sum(datos[18], datos[22], datos[2], datos[6]))
P_hombres=  (sum(datos[27]))/(sum(datos[27], datos[10]))
P_nignos_y_mujeres = P_mujer * P_nignos

P_mujer
## [1] 0.8602151
P_nignos
## [1] 1
P_hombres
## [1] 0.3275109
P_nignos_y_mujeres
## [1] 0.8602151
Como se puede observar, en primera instancia se escoje la 2da clase, la cual fue escogida aleatoriamente, para proceder a calcular las probabilidades de mujeres y menores de edad sobrevivientes dentro de la 2da clase. Luego de efectuar los calculos correspondiente se concluye que el producto de las probabilidades de que las mujeres y menores de edad sobrevivan es mayor a la probabiliadad de que los hombres sobrevivan, es por esto que se puede determinar que en 2da clase se cumple el código de “niños y mujeres primeros”.
Nota: Para el calculo de mujeres solo se tomaron en cuenta a las mujeres adultas, el caso de las mujeres niñas se tomaron en cuenta para el calculo de menores de edad

Concluyendo así esta nueva entrega correspondiente al ramo estadistica computacional del departamanto de ingeniera informatica de la Universidad de Santiago de Chile. En esta nueva entrega se pusieron en practica los conceptos visto en catedra, los cuales son las permutaciones, combinaciones, teoremas de probabilidades, probabilidades condicionadas, teorema de Bayes, entre otras. Si bien estos conceptos fueron vistos en catedra, en la seccion de ejercicios se utilizaron de maneras mas prácticas llevando a cabo ejercicios especificos de permutaciones, combinaciones y probabilidades como se vió anteriormente a lo largo de este trabajo.