<jupyter_start><jupyter_text>**Notas para contenedor de docker:** Comando de docker para ejecución de la nota de forma local:nota: cambiar `dir_montar` por la ruta de directorio que se desea mapear a `/datos` dentro del contenedor de docker.```dir_montar=aquí colocar la ruta al directorio a montar, por ejemplo: dir_montar=/Users/erick/midirectorio.```Ejecutar:```$docker run --rm -v $dir_montar:/datos --name jupyterlab_prope_r_kernel_tidyverse -p 8888:8888 -d palmoreck/jupyterlab_prope_r_kernel_tidyverse:2.1.4   ``` Ir a `localhost:8888` y escribir el password para jupyterlab: `<PASSWORD>`Detener el contenedor de docker:```docker stop jupyterlab_prope_r_kernel_tidyverse``` Documentación de la imagen de docker `palmoreck/jupyterlab_prope_r_kernel_tidyverse:2.1.4` en [liga](https://github.com/palmoreck/dockerfiles/tree/master/jupyterlab/prope_r_kernel_tidyverse). --- Para ejecución de la nota usar:[docker](https://www.docker.com/) (instalación de forma **local** con [Get docker](https://docs.docker.com/install/)) y ejecutar comandos que están al inicio de la nota de forma **local**. O bien dar click en alguno de los botones siguientes: [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/palmoreck/dockerfiles-for-binder/jupyterlab_prope_r_kernel_tidyerse?urlpath=lab/tree/Propedeutico/R/clases/2_probabilidad/3_metodos_de_conteo.ipynb) esta opción crea una máquina individual en un servidor de Google, clona el repositorio y permite la ejecución de los notebooks de jupyter. [![Run on Repl.it](https://repl.it/badge/github/palmoreck/dummy)](https://repl.it/languages/Rlang) esta opción no clona el repositorio, no ejecuta los notebooks de jupyter pero permite ejecución de instrucciones de Python de forma colaborativa con [repl.it](https://repl.it/). Al dar click se crearán nuevos ***repl*** debajo de sus users de ***repl.it***.  Lo siguiente está basado los libros: * <NAME>, <NAME>: Fundamentos de Elección Racional, 2009. * <NAME>, Introduction to Probability and Statistics Using R, 2014.  El libro de <NAME> tiene github: [jkerns/IPSUR](https://github.com/gjkerns/IPSUR) **Notas:*** Se utilizará el paquete [prob](https://cran.r-project.org/web/packages/prob/index.html) de R para los experimentos descritos en la nota y aunque con funciones nativas de R se pueden crear los experimentos, se le da preferencia a mostrar cómo en R se tienen paquetes para muchas aplicaciones.* En algunas líneas no es necesario colocar `print` y sólo se ha realizado para mostrar los resultados de las funciones en un formato similar al de R pues la nota se escribió con jupyterlab y R.* Cuidado al utilizar las funciones del paquete `prob` para construir espacios de probabilidad grandes como lanzar un dado 9 veces... (tal experimento tiene 10 millones de posibles resultados)<jupyter_code>options(repr.plot.width=4, repr.plot.height=4) #esta línea sólo se ejecuta para jupyterlab con R
library(prob)<jupyter_output>Loading required package: combinat


Attaching package: ‘combinat’


The following object is masked from ‘package:utils’:

    combn


Loading required package: fAsianOptions

Loading required package: timeDate

Loading required package: timeSeries

Loading required package: fBasics

Loading required package: fOptions


Attaching package: ‘prob’


The following objects are masked from ‘package:base’:

    intersect, setdiff, union<jupyter_text>Modelo equiprobable El modelo equiprobable es una forma conveniente y popular de analizar experimentos aleatorios. Si es posible suponer tal modelo, calcular la probabilidad del evento $E$ se traduce en calcular el número de resultados del experimento contenidos en $E$ junto con el número de eventos en $S$. Esto en la práctica se traduce en conocer algunas técnicas de conteo como son: el principio multiplicativo y permutaciones y combinaciones.  Ejemplo Considérese el experimento de lanzar cuatro veces un dado. Entonces el espacio de resultados $S$ se puede describir como $S = \{abcd, \text{ tales que } a,b,c,d \in \{1,2,3,4,5,6\} \}$. Entonces $S$ consiste en todas las cuartetas de números en los que se puede elegir cualquier número entre el $1$ y el $6$. ¿Cuántos elementos tiene $S$? El ejemplo anterior ilustra un principio básico de conteo:   El principio multiplicativoSi un procedimiento consiste de $k$ pasos o etapas **independientes** y cada paso puede ocurrir de $n_i$ formas distintas, entonces, el procedimiento puede llevarse a cabo de: $n_1\cdot n_2 \cdot \cdots \cdot n_k$ maneras distintas. En particular, si $n_i = n$ para toda $i$, entonces hay $n^k$ formas distintas.  Ejemplos 1) Hay 5 caminos diferentes para ir de la CdMx  a Toluca, 3 caminos para ir de Toluca a Morelia y 4 para ir de Morelia a Guadalajara. ¿Cuántos posibles caminos hay para ir de la CdMx a Guadalajara? 2) ¿Cuántos números telefónicos posibles hay, si cada número tiene ocho cifras? 3) (Ejemplo de no principio multiplicativo) Supongamos que en el menú de una casa se ofrecen dos platillos: una entrada y un plato principal. Se quiere que la familia tenga una comida balanceada, de manera que si la entrada es rica en carbohidratos, entonces, el plato principal debe ser bajo en carbohidratos y rico en proteína y viceversa. Las opciones para cada plato son: rico en carbohidratos o rico en proteínas. ¿De cuántas formas pueden escogerse la entrada y el plato principal?   Muestras ordenadas Imaginemos una bolsa con $n$ canicas distinguibles. Agitamos la bolsa y elegimos $k$ canicas de forma aleatoria y anotamos el atributo que las distingue en una libreta (por ejemplo el color). ¿Cuántas posibles secuencias podemos observar? El número de formas en las que una persona puede seleccionar una **muestra ordenada** de tamaño $k$ de una población que tiene $n$ objetos distinguibles es:* $n^k$ si el muestreo se realiza **con reemplazo**.* $n(n-1)(n-2)\cdots(n-k+1)$ si el muestreo se realiza **sin reemplazo**.  Permutaciones Si $n>k$ son enteros positivos, se definen las permutaciones de $n$ objetos tomadas en grupos de tamaño $k$ como: $_nP_k = n(n-1)(n-2)\cdots(n-k+1) = \frac{n!}{(n-k)!}$ y se lee "permutaciones de $n$ en $k$".  Ejemplos 1) ¿Cuántas secuencias posibles de Águila y Sol pueden obtenerse en siete lanzamientos de una moneda?2) Rentamos 5 películas para ver hoy por la noche y mañana por la noche. Hoy queremos ver $3$ películas. ¿De cuántas formas distintas podemos elegir las tres películas para ver hoy si nos importa el orden?3) ¿Cuál es la probabilidad de que en un grupo de $k$ $(2 \leq k \leq 365)$ personas todas tengan cumpleaños diferentes? Asumir que no hay años bisiestos.  Muestras sin orden El número de formas en las que una persona puede seleccionar una **muestra no ordenada** de tamaño $k$ de una población que tiene $n$ objetos distinguibles es:* $\frac{(n-1+k)!}{(n-1)!k!}$ si la muestra se hace **con reemplazo**.* $\frac{n!}{k!(n-k)!}$ si la muestra se hace **sin reemplazo**.  Combinaciones La cantidad $\frac{n!}{k!(n-k)!}$ se llama coeficiente binomial y se denota: $\binom{n}{k}$ y se lee "combinaciones de $n$ en $k$".  Ejemplos 1) ¿Cuántas manos de poker posibles existen en una baraja?2) Si se tienen 12 accionistas, ¿de cuántas formas puede elegirse entre ellos un comité de 3 miembros?3) La lotería Melate consiste en elegir una combinación de seis números diferentes entre el 1 y el 56. ¿Cuál es la probabilidad de escoger la combinación ganadora?4) En una mano de poker, ¿cuál es la probabilidad de obtener una corrida del mismo palo? (las corridas pueden iniciar en cualquier número del 1 al 10) ¿cuál es la probabilidad de obtener cuatro cartas del mismo número y distinto palo?  ¿Cómo hacerlo en R? El factorial de un número entero no negativo $n$ se calcula con la ejecución `factorial(n)`, ver [factorial](https://www.rdocumentation.org/packages/SparkR/versions/2.1.2/topics/factorial) y el coeficiente binomial $\binom{n}{k}$ se calcula con `choose(n,k)`, ver [special](https://www.rdocumentation.org/packages/base/versions/3.6.2/topics/Special). Con la función [nsamp](https://www.rdocumentation.org/packages/prob/versions/1.0-1/topics/nsamp) del paquete `prob` se calcula el número de renglones en un espacio de resultados construído por [urnsamples](https://www.rdocumentation.org/packages/prob/versions/1.0-1/topics/urnsamples) sin necesidad de generar el espacio completo. Los argumentos de `nsamp` son: `n`, el número de objetos distinguibles en la urna, `k` el tamaño de muestra y `replace` y `ordered` como antes. Se tiene la siguiente tabla del muestreo de tamaño $k$ de $n$ objetos con `urnsamples`:|-----|ordered=T|ordered=F||:-----|:-----:|:-----:||replace=T| $n^k$| $\binom{n-1+k}{k}=\frac{(n-1+k)!}{(n-1)!k!}$||replace=F|$_nP_k=\frac{n!}{(n-k)!}$|$\binom{n}{k}=\frac{n!}{k!(n-k)!}$|  Ejemplo 1) **Experimento:** sacar 2 canicas distinguibles de una urna<jupyter_code>nsamp(n=3, k=2, replace = TRUE, ordered = TRUE)
nsamp(n=3, k=2, replace = FALSE, ordered = TRUE)
nsamp(n=3, k=2, replace = FALSE, ordered = FALSE)
nsamp(n=3, k=2, replace = TRUE, ordered = FALSE)<jupyter_output><empty_output><jupyter_text>2) **Experimento:** elección de artistas, pinturas y luz...11 artistas enviarán sus portafolios con contenido de 7 pinturas cada uno para competir en una exhibición de arte. La directora de la galería sólo tiene espacio para acomodar 12 pinturas de los tres primeros lugares a lo largo de una fila en tres paredes que se encuentran una al lado de otra y la primera pared se le asignará al primer lugar, la segunda pared al segundo lugar y la tercera al tercer lugar. La directora le dará a cada persona ganadora una pared para exhibir sus pinturas y cada artista las acomodará de acuerdo al orden que elija (al artista le importa el orden). Además en las paredes se puede proyectar un color de los 31 distintos colores de luz para la exhibición. ¿Cuántos diferentes arreglos entre artistas que ganan los tres primeros lugares, elección de sus pinturas y colores se pueden tener en la exhibición de la galería? Se tiene el siguiente análisis del problema:* Se eligen 3 artistas de los 11 que ganan los 3 primeros lugares, esta es una elección sin reemplazo y con orden: $_{11}P_3$.* Cada artista elige 4 pinturas de sus 7 pinturas de su portafolio y sí le interesa el orden de exhibición de sus pinturas, esta es una elección sin reemplazo y con orden: $_7P_4$.* Cada artista elige la luz de su preferencia, esta es una elección con reemplazo y con orden: $31*31*31$.Entonces:<jupyter_code>n <- c(11, 7, 31)
k <- c(3,4,3)
replace <- c(FALSE, FALSE, TRUE)

#in the next execution observe that argument `order=TRUE` will
#be recycled to match the length of the values of replace vector
x<- nsamp(n, k, replace, order=TRUE)<jupyter_output><empty_output><jupyter_text>La solución del ejercicio se resuelve con el principio multiplicativo y es:<jupyter_code>prod(x)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.09125195474197406, 'fraction_numerical': 0.012694324349185908, 'mean_word_length': 5.073743016759776, 'pattern_counts': {'":': 0, '<': 25, '<?xml version=': 0, '>': 22, 'https://': 14, 'lorem ipsum': 0, 'www.': 5, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '280994', 'license': 'Apache-2.0', 'n_tokens_mistral': 3787, 'n_tokens_neox': 3670, 'n_words': 1460, 'path': 'R/clases/2_probabilidad/3_metodos_de_conteo.ipynb', 'repo_name': 'CarlosJChV/Propedeutico', 'size': '10898'}