ComenzarEmpieza gratis

Comparar intervalos y fechas-hora

Una tarea común con los intervalos es preguntar si un momento concreto está dentro del intervalo o si se solapa con otro intervalo.

El operador %within% comprueba si la fecha-hora (o el intervalo) del lado izquierdo está dentro del intervalo del lado derecho. Por ejemplo, si y2001 es el intervalo que cubre el año 2001,

y2001 <- ymd("2001-01-01") %--% ymd("2001-12-31")

Entonces ymd("2001-03-30") %within% y2001 devolverá TRUE y ymd("2002-03-30") %within% y2001 devolverá FALSE.

int_overlaps() realiza una comprobación similar, pero devolverá true si dos intervalos se solapan en absoluto.

Practica para averiguar qué monarcas vieron el cometa Halley alrededor de 1066.

Este ejercicio forma parte del curso

Trabajar con fechas y horas en R

Ver curso

Instrucciones del ejercicio

Hemos puesto halleys, un conjunto de datos que describe las apariciones del cometa Halley, en tu espacio de trabajo.

  • Imprime halleys para examinar los datos. perihelion_date es la fecha en la que el cometa está más cerca del Sol. start_date y end_date son el rango de fechas en que el cometa es visible desde la Tierra.
  • Crea una nueva columna, visible, que sea un intervalo desde start_date hasta end_date.
  • Trabajarás con una aparición: extrae la fila 14 de halleys.
  • Filtra monarchs a aquellos donde halleys_1066$perihelion_date esté dentro de reign.
  • Filtra monarchs a aquellos donde halleys_1066$visible se solape con reign.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Print halleys
halleys

# New column for interval from start to end date
halleys <- halleys %>% 
  mutate(visible = ___)

# The visitation of 1066
halleys_1066 <- halleys[__, ] 

# Monarchs in power on perihelion date
monarchs %>% 
  filter(___) %>%
  select(name, from, to, dominion)

# Monarchs whose reign overlaps visible time
monarchs %>% 
  filter(___) %>%
  select(name, from, to, dominion)
Editar y ejecutar código