knitr::opts_chunk$set(echo = FALSE) library(learnr) library(tidyverse) library(hflights) library(lubridate) library(readxl) library(ggplot2) library(dplyr) library(gradethis) tutorial_options(exercise.checker = gradethis::grade_learnr) marriage <- mosaicData::Marriage matrimonios <- marriage %>% mutate(appdate = mdy(appdate), ceremonydate = mdy(ceremonydate), dob = format(as.Date(dob, "%m/%d/%y"), "19%y-%m-%d") ) marriage_duracion <- matrimonios %>% mutate(duracion = today() - ceremonydate)
knitr::include_graphics( "https://storage.googleapis.com/datos_cursos/ixpantia_introR/ixpantia_logo.png" )
Este set de datos contiene información sobre matrimonios registrados en Alabama, Estados Unidos entre 1996 y 1999.
glimpse(marriage)
| Variable | Descripción |
| :--------: | :-----------: |
| bookpageID
| Identificador |
| appdate
| Fecha en que se presentó la aplicación |
| ceremonydate
| Fecha de la ceremonia |
| delay
| Número de días entre la aplicación y la ceremonia |
| officialTitle
| "Título" de la persona que inscribe el matrimonio |
| person
| Indica si el novio o la novia inscribió el matrimonio |
| dob
| Fecha de nacimiento de la persona que inscribe |
| age
| Años de la persona que inscribe |
| race
| Etnia de la persona que inscribe |
| prevcount
| Número de matrimonios previos de la persona que inscribe |
| prevconc
| Forma en la que el último matrimonio terminó |
| hs
| Número de años de colegio aprobados |
| college
| Número de años de universidad aprobados |
| dayOfBirth
| Día de nacimiento |
| sign
| Signo astrológico de quien inscribe |
class(marriage$appdate) class(marriage$ceremonydate) class(marriage$dob)
Anteriormente vimos que en el set de datos marriage hay tres variables que representan fechas pero no están correctamente categorizadas. Utilice las funciones vistas anteriormente para convertirlas en el formato que les pertenece.
appdate <- ceremonydate <- dob <-
"mdy o ymd"
appdate <- mdy(marriage$appdate) ceremonydate <- mdy(marriage$ceremonydate) dob <- format(as.Date(marriage$dob, "%m/%d/%y"), "19%y-%m-%d")
grade_code("¡Muy bien!")
En el ejercicio anterior pasamos las columnas que se referían a fechas en el
formato correcto, esto quedó guardado en un nuevo set de datos llamado
matrimonios. Ahora cree una nueva variable que represente el tiempo que ha
pasado desde la ceremonia (ceremonydate
) y llamela duracion
matrimonios %>% mutate()
"today()"
grade_result( pass_if(~ identical(unlist(.result), unlist(matrimonios %>% mutate(duracion = today() - ceremonydate))), "¡Genial!") )
duracion
En el ejercicio anterior creamos una nueva variable llamada duracion
que
representa el tiempo que ha pasado desde el matrimonio al dia de hoy. Esto
quedó guardado en un nuevo set de datos llamado marriage_duracion. Ahora
utilice ggplot2
para representar con un gráfico la distribucion de esta
variable. Debe utilizar as.numeric(duracion)
para evitar problemas con la
interfaz.
ggplot(marriage_duracion, aes()) + geom_
"geom_histogram()"
"aes(as.numeric(duracion))"
grade_result( pass_if(~ identical(.result, ggplot(marriage_duracion, aes(as.numeric(duracion))) + geom_histogram(aes(fill = ..count..))), "¡Bien hecho!") )
duracion
según la persona que inscribió el matrimonioEn el ejercicio anterior obtuvimos un gráfico con la distribución de duracion
en forma de histograma, ahora vuelva a hacerlo pero esta vez diferenciando
según la persona que inscribió el matrimonio, representado por la columna
person
. Recuerde utilizar as.numeric(duracion)
.
ggplot(marriage_duracion, aes()) + geom_
"fill = person"
grade_result( pass_if(~ identical(.result, ggplot(marriage_duracion, aes(as.numeric(duracion), fill = person)) + geom_histogram()), "¡Excelente!") )
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.