library(learnr) knitr::opts_chunk$set(echo = FALSE) library(dplyr) library(readr) library(gradethis) library(janitor) tutorial_options(exercise.checker = gradethis::grade_learnr) url <- "https://storage.googleapis.com/datos_cursos/peajes%20(1).xlsx" temp <- tempfile(fileext = ".xlsx") download.file(url, destfile = temp, mode = "wb") peajes <- readxl::read_xlsx(temp) %>% clean_names() %>% mutate(x2016 = as.numeric(x2016), x2017 = as.numeric(x2017))
knitr::include_graphics( "https://storage.googleapis.com/datos_cursos/ixpantia_introR/ixpantia_logo.png" )
Este conjunto de datos contiene información sobre peajes de Costa Rica. Consiste de 36 observaciones y 6 variables.
glimpse(peajes)
Descripción de las variables:
| Variable | Descripción |
| :----------: | :--------------------------------: |
| estacion_de_conteo
| Nombre de la estación de peaje |
| numero_de_ruta
| Número de ruta en la que se encuentra el peaje |
| ubicacion_de_la_estacion
| Dirección donde se encuentra el peaje |
| x2015
| Cantidad de dinero recolectado en el 2015 en ese peaje |
| x2016
| Cantidad de dinero recolectado en el 2016 en ese peaje |
| x2017
| Cantidad de dinero recolectado en el 2017 en ese peaje |
"class()"
grade_result( pass_if(~ identical(unlist(.result), unlist(class(peajes))), "¡Genial!") )
question( "¿Cuáles son los requisitos de tidy data? (Marque todas las opciones correctas)", answer("Cada Variable debe de tener su propia columna", correct = TRUE), answer("Cada Observación debe de tener su propia fila", correct = TRUE), answer("Cada Variable debe tener su propia fila "), answer("Cada Valor debe de tener su propia celda", correct = TRUE), answer("Cada Valor debe tener varias celdas"), answer("Cada Observación debe tener su propia columna"), correct = "Correcto", incorrect = "Incorrecto")
En este segmento vamos a trabajar con base R. Las respuestas serán evaluadas con código que sea con base R en lugar del tidyverse. Si querés practicar con el tidyverse recomendamos usar los tutoriales dinámicos de ixpantia a partir del tercero.
En el set de datos peajes hay 36 filas, ahora obtenga la información de la quinta fila solamente.
"[]"
grade_result( pass_if(~ identical(unlist(.result), unlist(peajes[5,])), "¡Buenísimo!") )
En el set de datos hay una columna llamada numero_de_ruta
que indica el
número de carretera en la que se encuentra cada peaje. Obtenga la información
referente a aquellos peajes que se encuentran únicamente en la ruta 27.
"subset()"
grade_result( pass_if(~ identical(unlist(.result), unlist(subset(peajes, numero_de_ruta == "27"))), "¡Genial!") )
En el set de datos hay una columna que se llama x2015
que contiene los montos
recolectados por cada peaje en este año. Ahora obtenga aquellos peajes que en
este año recolectaron más de 16000.
">="
`x2015`
grade_result( pass_if(~ identical(unlist(.result), unlist(subset(peajes, `x2015` >= 16000))), "¡Excelente!") )
En el conjunto de datos hay una columna que se llama x2016
que contiene los
montos recolectados por cada peaje en este año. Obtenga aquellos peajes que ese
año recolectaron más de 14000 pero menos de 38000.
"& funciona como 'y'"
grade_result( pass_if(~ identical(unlist(.result), unlist( subset(peajes, peajes$`x2016` > 14000 & peajes$`x2016` < 38000) )), "¡Muy bien!") )
En el set de datos hay tres columnas referentes a los montos recolectados en los
peajes en tres años distintos, estas son x2015
, x2016
y x2017
. Ahora cree
una nueva columna que contenga la suma de los montos recolectados en estos años
para cada peaje. Llame a esa columna suma
peajes$suma
grade_result( pass_if(~ identical(unlist(.result), unlist( peajes$suma <- peajes$`x2015` + peajes$`x2016` + peajes$`x2017`)), "¡Bien hecho!") )
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.