1.2.2 Diferencias entre permutaciones y combinaciones

Las permutaciones se diferencian de las combinaciones ya que estas son agrupaciones de objetos donde el orden no importa, mientras que en las permutaciones si importa el orden de los objetos.

1.2.3 Funcionamiento de permutaciones y combinaciones

En R las funciones combinations y permutations se utilizan de la siguiente manera:

combinations(n, r, v = 1:n, set = TRUE, repeats.allowed = FALSE)

permutations(n, r, v = 1:n, set = TRUE, repeats.allowed = FALSE)

Siendo: n - el tamaño del vector base o fuente. r - el tamaño del vector resultante o objetivo. v - el vector utilizado como recurso. set - es un indicador logico que permite eliminar los duplicados que existan en el vector base/fuente. repeats.allowed - indicador logico que permite la construccion de vectores con valores duplicados.

(library(gtools))
## [1] "gtools"    "stats"     "graphics"  "grDevices" "utils"     "datasets" 
## [7] "methods"   "base"
combinations(3,3,letters[1:3])
##      [,1] [,2] [,3]
## [1,] "a"  "b"  "c"
combinations(3,3,letters[1:3],repeats=TRUE)
##       [,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"

1.2.4 Calcular

  1. Cantidad de permutaciones con n=14 y r=4 con y sin repetición Permutaciones con repetición:
nrow(permutations(14, 4, repeats.allowed = TRUE))
## [1] 38416

Permutaciones sin repetición:

nrow(permutations(14, 4, repeats.allowed = FALSE))
## [1] 24024
  1. Combinaciones de largo tres con las letras a, b y c con y sin repetición. Combinaciones con repetición:
combinations(3,3,letters[1:3], repeats.allowed = TRUE)
##       [,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"

Combinaciones sin repetición:

combinations(3,3,letters[1:3], repeats.allowed = FALSE)
##      [,1] [,2] [,3]
## [1,] "a"  "b"  "c"
  1. Cantidad de permutaciones y combinaciones con n = 30 y r = 2 sin repetición. Permutaciones sin repetición:
nrow(permutations(30, 2, repeats.allowed = FALSE))
## [1] 870

Combinaciones sin repetición:

nrow(combinations(30, 2, repeats.allowed = FALSE))
## [1] 435

1.2.5 Utilizando el conjunto de datos Titanic

  1. Cree una función que calcule la probabilidad de A dado B
prob_a_b = function(prob_b_a, prob_a, prob_b){
  return(prob_b_a*prob_a/prob_b)
}