Resumen

A continuación se encuentran las respuestas y su código correspondiente a los desafíos presentados en la primera sesión de Ejercicio del Ramo de Estadística Computacional.

Desafío 1

Realice otros 10 ejemplos con diferentes operadores matemáticos. A continuación se experimenta con distintas funciones y operadores matemáticos.

#Uso de pi
ctte <- pi
ctte
## [1] 3.141593
#Redondeamiento
pi_4 = round(ctte, 4)
pi_4
## [1] 3.1416
#Cálculo del área de un círculo mediante multiplicación por término al cuadrado
r <- 4.5
area_circulo = ctte * r^2
area_circulo
## [1] 63.61725
#Funciones trigonométricas
cos_sin = cos(78) * sin(12)
cos_sin
## [1] 0.4602739
#Valor absoluto
x = -2
abs = abs(x)
abs
## [1] 2
#Raíz cuadrada para calcular la diagonal de un rectángulo de lado a y b
a = 2
b = 3
diag = sqrt(a^2 + b^2)
diag
## [1] 3.605551
#e^0
uno = exp(0)
uno
## [1] 1
#Definición por extensión de un conjunto de naturales (conteniendo al 0) desde el -8 al 8.
conjunto <- c(-8:8)
conjunto
##  [1] -8 -7 -6 -5 -4 -3 -2 -1  0  1  2  3  4  5  6  7  8
#Conjunto acotado
conjunto[(conjunto > -3) & (conjunto < 3)]
## [1] -2 -1  0  1  2
#Logaritmo base 10
test_log = log10(1000)
test_log
## [1] 3

Desafío 2

Realice ejemplos usando otros tipos de estructura de datos: elementos booleanos, factores, tablas, entre otros. A continuación se experimenta con tablas de verdad.

tabla_verdad = matrix(c(0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1), nrow=8, ncol=4)
colnames(tabla_verdad)=c("A", "B", "C", "(A | B) & C")
tabla_verdad
##      A B C (A | B) & C
## [1,] 0 0 0           0
## [2,] 1 0 0           0
## [3,] 0 1 0           0
## [4,] 1 1 0           1
## [5,] 0 0 1           1
## [6,] 1 0 1           1
## [7,] 0 1 1           1
## [8,] 1 1 1           1

Desafío 3

Construya una función que permita a un jugador jugar al piedra papel o tijeras. A continuación se diseña y ejecuta una función que permite jugar piedra papel o tijera.

#Función sin argumentos, solo requiere ser llamada
juego <- function(){
  opciones <- c("piedra", "papel", "tijera")
  cpu_win <- 0
  pla_win <- 0
  
  #Se juega un mejor de 3
  while (cpu_win < 2 & pla_win < 2){
    #Input del jugador
    pla_opcion <- readline(prompt="Escriba 'piedra', 'papel' o 'tijera':")
    #Opción aleatoria
    cpu_opcion <- sample(opciones, 1)
    if ((pla_opcion %in% opciones) == FALSE){
      print("Introduzca un valor válido!")
    }
    else if (pla_opcion == cpu_opcion){
      print("Empate! Vuelva a escoger.")
    }
    else if (pla_opcion == "piedra"){
      if (cpu_opcion == "papel"){
       cpu_win <- cpu_win + 1
       print("CPU gana!")
      }
      else{
        pla_win <- pla_win + 1
        print("Jugador gana!")
      }
    }
    else if (pla_opcion == "papel"){
      if (cpu_opcion == "tijera"){
        cpu_win <- cpu_win + 1
        print("CPU gana!")
      }
      else{
        pla_win <- pla_win + 1
        print("Jugador gana!")
      }
    }
    else if (pla_opcion == "tijera"){
      if (cpu_opcion == "piedra"){
        cpu_win <- cpu_win + 1
        print("CPU gana!")
      }
      else{
        pla_win <- pla_win + 1
        print("Jugador gana")
      }
    }
    print(paste("Victorias CPU:", cpu_win))
    print(paste("Victorias Jugador:", pla_win))
  }
  if (cpu_win >= 2){
    "CPU gana el juego! Inténtalo otra vez!"
  }
  else{
    "Jugador gana el juego! Felicidades!"
  }
}

Desafío 4

1.- Seleccione un conjunto de datos desde el paquete ‘datasets’ de R. Para ver los datasets disponibles en la consola puede utilizar la función “data()” o puede consultarlos en la página web https://stat.ethz.ch/R-manual/R-devel/library/datasets/html/00Index.html. Una vez seleccionado puede utilizar la función data(‘nombre_del_dataset’) para cargar el dataset. .
data(VADeaths)
2.- Describa el conjunto de datos y explique para que fue o podría ser utilizado. Puede usar la función help(‘nombre_del_dataset’). ¿Cuál es la fuente de los datos? .

El dataset VADeaths otorga los datos de tasa de fallecimientos anuales en el estado de Virginia en Estados Unidos en el orden de los 1000 habitantes, agrupados en grupos etáreos de 5 años cada intervalo, y discriminando entre hombres y mujeres pertenecientes a la zona rural y urbana de Virginia. La fuente de los datos obtenidos es Molyneaux, L., Gilliam, S. K., and Florant, L. C.(1947) Differences in Virginia death rates by color, sex, age, and rural or urban residence. American Sociological Review, 12, 525–535..

3.- Describa cada variable, indique a qué tipo de variable corresponde, indique qué valores puede tomar y su unidad de medida.

Las variables son edad y grupo de población. Edad es una variable cuantitativa discreta. Esta variable se mide en [año] y su dominio va desde los [50, 74] en intervalos de tamaño 5 con precisión de 1 en cada intervalo. La variable población es cualitativa nominal. Esta variabe se compone de una combinación de Hombre/Mujer con Rural/Urbana, creando el dominio {Hombre Rural, Mujer Rural, Hombre Urbano, Mujer Urbana}.

4.- Ejecute la función summary(“conjunto_de_datos”). ¿Qué puede observar?
##    Rural Male     Rural Female     Urban Male     Urban Female  
##  Min.   :11.70   Min.   : 8.70   Min.   :15.40   Min.   : 8.40  
##  1st Qu.:18.10   1st Qu.:11.70   1st Qu.:24.30   1st Qu.:13.60  
##  Median :26.90   Median :20.30   Median :37.00   Median :19.30  
##  Mean   :32.74   Mean   :25.18   Mean   :40.48   Mean   :25.28  
##  3rd Qu.:41.00   3rd Qu.:30.90   3rd Qu.:54.60   3rd Qu.:35.10  
##  Max.   :66.00   Max.   :54.30   Max.   :71.10   Max.   :50.00

La función summary otorga las siguientes medidas relevantes del dataset VADeaths: valor mínimo, máximo, promedio y cuartiles.

5.- Ejecute la función plot(“conjunto_de_datos”). ¿Qué puede observar?

La función genera un gráfico con las primeras 2 columnas de la tabla.