knitr::opts_chunk$set(echo = TRUE)
library(learnr)
library(dplyr)
library(gradethis)
library(datos)
y <- 10:100
notas <- c(67, 89, 95, 92, 71, 84, 100, 97)

tutorial_options(exercise.checker = gradethis::grade_learnr)

Descripción general

R es uno de los lenguajes de programación estadística más populares en el mundo. Permite hacer una gran variedad de análisis y productos de datos, por lo que resulta ser una herramienta muy poderosa para profesionales en diversas áreas.

A continuación mostramos los conceptos básicos de R:

Crear objetos

En R para crear un objeto utilizamos el símbolo <- (también se puede utilizar =).

Ejemplo: crear un objeto llamado "temperatura" que contenga el número 36.

temperatura <- 36

Funciones

Las funciones son una serie de pasos o procedimientos que se encapsulan en un mismo lugar para que escribir código sea más eficiente. Una función siempre es precedida por un paréntesis. Dentro de los paréntesis colocamos la información requerida para que la función haga su trabajo.

Un ejemplo de una función de R es mean(), para obtener rápidamente el promedio de algún objeto.

Podemos utilizarla para obtener el promedio de las notas de un curso que tenemos guardadas en el objeto notas.

notas

Se utiliza de la siguiente forma:

mean(notas)

Data frames

Una de las estructuras más comunes en R son los data frames o conjuntos de datos. En palabras simples estos son tablas que contienen datos y están formadas por filas y columnas. Para crear uno de estos objetos en R podemos hacer lo siguiente:

df <- data.frame(x1 = c("A", "B", "C"),
                 x2 = c(1, 2, 3))

Para poder acceder las columnas y las filas de estos objetos se utiliza la siguiente lógica: datos[fila, columa]. Es decir, si quiero obtener la segunda fila del conjunto anterior (y todas las columnas) puedo utilizar:

df[2, ]

Para obtener la segunda columna y todas las filas:

```r df[, 2]

Y para obtener la segunda columna de la segunda fila solamente:

```r
df[2, 2]

Ayuda

Para buscar ayuda o documentación sobre una función o paquete de R se utiliza el signo de pregunta (?). Para la ayuda de una función hacemos lo siguiente:

?class

Para buscar la ayuda de un paquete:

??dplyr

Ejercicios

Utilice la función max()

La función max como es de esperar, nos devuelve el número máximo del objeto que le indiquemos. Utilícela para obtener el máximo de y <- 10:100.


max()
grade_result(
  pass_if(~ identical(unlist(.result), 
                      unlist(max(y))),
          "¡Bien!")
)

Busque la ayuda o documentación de la función mean()


?
grade_result(
  pass_if(~ identical(unlist(.result), 
                      unlist(?mean)),
          "¡Buenísimo!")
)

Acceda la segunda columna del conjunto de datos mtautos


"[, 2]"
grade_result(
  pass_if(~ identical(unlist(.result), 
                      unlist(mtautos[, 2])),
          "¡Buenísimo!")
)

Llame la librería learnr


install.packages()
grade_result(
  pass_if(~ identical(.result, library(learnr)),
          "¡Muy bien!")
)

Instalar paquete

question("¿Cómo se intala el paquete `dplyr`?",
  answer("install_packages(dplyr)"),
  answer("installPackages(dplyr)"),
  answer("install.packages(\"dplyr\")", correct = TRUE),
  correct = "Correcto",
  incorrect = "Incorrecto"
)

Encuentre la clase de objeto que es y


"class()"
grade_result(
  pass_if(~ identical(.result, class(y)),
          "¡Excelente!")
)

Resolviendo errores

Imaginemos que comienzo a hacer un análisis de datos exploratorio en R y lo primero que quiero hacer es un gráfico con ggplot. Para esto escribo lo siguiente:

ggplot(ventas, aes(x = tipo_producto, y = total_ganancias)) +
  geom_boxplot()

Al hacerlo, obtengo el siguiente error:

knitr::include_graphics(
  "https://storage.googleapis.com/datos_cursos/ixpantia_introR/error_libreria.png"
  )  
question("¿Porqué se da esta error?",
  answer("Porque faltan argumentos en el código"),
  answer("Porque no ha llamado la librería `ggplot2`", 
         correct = TRUE),
  answer("Porque los datos `ventas` no fueron cargados"),
  answer("Porque hay un error ortográfico en la instrucción"),
  correct = "Correcto",
  incorrect = "Incorrecto"
)


ixpantia/ixpantia.introR documentation built on Jan. 25, 2024, 2:32 p.m.