Teoría

La información del clima se obtiene del ASOS (Automated Surface Observing System) ubicados en los aeropuertos de todas las ciudades del mundo.

Instalar paquetes y llamar librerías

#install.packages("riem") # Accesar al ASOS para obtener datos climáticos.
library(riem)
# install.packages("tidyverse") # Manipulación de datos 
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.5
## ✔ forcats   1.0.0     ✔ stringr   1.5.1
## ✔ ggplot2   3.5.0     ✔ tibble    3.2.1
## ✔ lubridate 1.9.3     ✔ tidyr     1.3.1
## ✔ purrr     1.0.2     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
# install.packages("ggplot2") # Gráficas con mejor diseño que plot
library(ggplot2)
# install.packages("plotly") # Gráficas con mejor calidad 
library(plotly)
## 
## Attaching package: 'plotly'
## 
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## 
## The following object is masked from 'package:stats':
## 
##     filter
## 
## The following object is masked from 'package:graphics':
## 
##     layout

Paso 1. Buscar la red del país (México) y copiar CODE

view(riem_networks())
# MX__ASOS

Paso 2. Buscar la estación o ciudad (Monterrey) y copiar ID

# view(riem_stations("MX__ASOS"))
# MMMY

Paso 3. Obtener datos del clima

clima_mty <- riem_measures("MMMY")

Ejercicio 1. Obtener datos del clima de Monterrey de febrero 2024

clima_mty_feb <- subset(clima_mty, valid >= as.POSIXct("2024-02-01 00:00") & valid <= as.POSIXct("2024-02-29 23:59"))

Ejercicio 2. Graficar la Humedad Relativa en Monterrey durante Febrero 2024

plot(clima_mty_feb$valid,clima_mty_feb$relh,type="l",main="Humedad Relativa en Monterrey durante Febrero 2024", xlab="Fecha", ylab="Humedad Relativa (%)")

#Promediar Humedad Relativa Diaria
clima_mty_feb$date <- as.Date(clima_mty_feb$valid) #Agregamos columna que no exisitía, la cual se fue hasta final llamada Date
cmfd <- aggregate(clima_mty_feb, by=list(date=clima_mty_feb$date), FUN=mean)

# Gradicar la Humedad Relativa promedio por día
plot(cmfd$date,cmfd$relh,type="l",main="Humedad Relativa en Monterrey durante Febrero 2024", xlab="Fecha", ylab="Humedad Relativa (%)")

Ejercicio 3. Graficar la temperatura promedio diaria durante febrero 2024 en Puebla

#Primero debemos obtener los datos de sólo 2024
clima_pue <- riem_measures("MMPB")
clima_pue_feb <- subset(clima_pue, valid >= as.POSIXct("2024-02-01 00:000") & valid <= as.POSIXct("2024-02-29 23:59"))
#Agregar tabla del clima en Celcius
clima_pue_feb$centi <- clima_pue_feb$tmpf-32*0.5556
cmfp <- aggregate(clima_pue_feb, by=list(centi=clima_pue_feb$centi), FUN=mean)
cmfp$date <- as.Date(cmfp$valid) 
# Gradicar la Humedad Relativa promedio por día
plot(cmfp$date,cmfp$centi.1,type="l",main="temperatura promedio diaria durante febrero 2024 en Puebla", xlab="Temperatura Promedio (%)", ylab="Fecha")

Conclusión

En este trabajo utilizamos una red de estaciones meteorológicas “ASOS” , para poder reunir información para el análisis meteorológico, y climatológico. Además se ejecutaron varias bibliotecas vistas en clase como el ggplot2, plotly y el tidyverse para agrupar los datos y analizarlos de diversas regiones y así conseguir los pronósticos de temperatura. Este enfoque puede ser de ayuda para el proceso de selección en las aerolíneas.

LS0tCnRpdGxlOiAiQ2xpbWEiCmF1dGhvcjogIkNhcm9saW5hIFN1w6FyZXogQTAwODM3OTIyIgpkYXRlOiAiMjAyNC0wMi0yOSIKb3V0cHV0OiAKIGh0bWxfZG9jdW1lbnQ6ICAKICAgIHRvYzogVFJVRQogICAgdG9jX2Zsb2F0OiBUUlVFCiAgICBjb2RlX2Rvd25sb2FkOiBUUlVFCiAgICB0aGVtZTogZGFyawotLS0KIVtdKC9Vc2Vycy9jYXJvc3VhcmV6L0Rvd25sb2Fkcy80NDI2X2F1dG9tYXRlZF9zdXJmYWNlX29ic2VydmluZ19zeXN0ZW1fYXNvcy5qcGcpCgojIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiB5ZWxsb3c7Ij5UZW9yw61hPC9zcGFuPgpMYSBpbmZvcm1hY2nDs24gZGVsIGNsaW1hIHNlIG9idGllbmUgZGVsICoqQVNPUyoqICgqQXV0b21hdGVkIFN1cmZhY2UgT2JzZXJ2aW5nIFN5c3RlbSopIHViaWNhZG9zIGVuIGxvcyBhZXJvcHVlcnRvcyBkZSB0b2RhcyBsYXMgY2l1ZGFkZXMgZGVsIG11bmRvLgoKIyMjIDxzcGFuIHN0eWxlPSJjb2xvcjogeWVsbG93OyI+SW5zdGFsYXIgcGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyw61hczwvc3Bhbj4KYGBge3Igd2FybmluZz1GQUxTRX0KI2luc3RhbGwucGFja2FnZXMoInJpZW0iKSAjIEFjY2VzYXIgYWwgQVNPUyBwYXJhIG9idGVuZXIgZGF0b3MgY2xpbcOhdGljb3MuCmxpYnJhcnkocmllbSkKIyBpbnN0YWxsLnBhY2thZ2VzKCJ0aWR5dmVyc2UiKSAjIE1hbmlwdWxhY2nDs24gZGUgZGF0b3MgCmxpYnJhcnkodGlkeXZlcnNlKQojIGluc3RhbGwucGFja2FnZXMoImdncGxvdDIiKSAjIEdyw6FmaWNhcyBjb24gbWVqb3IgZGlzZcOxbyBxdWUgcGxvdApsaWJyYXJ5KGdncGxvdDIpCiMgaW5zdGFsbC5wYWNrYWdlcygicGxvdGx5IikgIyBHcsOhZmljYXMgY29uIG1lam9yIGNhbGlkYWQgCmxpYnJhcnkocGxvdGx5KQoKYGBgCgojIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiB5ZWxsb3c7Ij5QYXNvIDEuIEJ1c2NhciBsYSByZWQgZGVsIHBhw61zIChNw6l4aWNvKSB5IGNvcGlhciBDT0RFPC9zcGFuPgpgYGB7ciB3YXJuaW5nPUZBTFNFfQp2aWV3KHJpZW1fbmV0d29ya3MoKSkKIyBNWF9fQVNPUwpgYGAKCgojIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiB5ZWxsb3c7Ij5QYXNvIDIuIEJ1c2NhciBsYSBlc3RhY2nDs24gbyBjaXVkYWQgKE1vbnRlcnJleSkgeSBjb3BpYXIgSUQ8L3NwYW4+CmBgYHtyIHdhcm5pbmc9RkFMU0V9CiMgdmlldyhyaWVtX3N0YXRpb25zKCJNWF9fQVNPUyIpKQojIE1NTVkKYGBgCgojIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiB5ZWxsb3c7Ij5QYXNvIDMuIE9idGVuZXIgZGF0b3MgZGVsIGNsaW1hPC9zcGFuPgpgYGB7ciB3YXJuaW5nPUZBTFNFfQpjbGltYV9tdHkgPC0gcmllbV9tZWFzdXJlcygiTU1NWSIpCmBgYAoKIyMjIDxzcGFuIHN0eWxlPSJjb2xvcjogeWVsbG93OyI+RWplcmNpY2lvIDEuIE9idGVuZXIgZGF0b3MgZGVsIGNsaW1hIGRlIE1vbnRlcnJleSBkZSBmZWJyZXJvIDIwMjQ8L3NwYW4+CmBgYHtyIHdhcm5pbmc9RkFMU0V9CmNsaW1hX210eV9mZWIgPC0gc3Vic2V0KGNsaW1hX210eSwgdmFsaWQgPj0gYXMuUE9TSVhjdCgiMjAyNC0wMi0wMSAwMDowMCIpICYgdmFsaWQgPD0gYXMuUE9TSVhjdCgiMjAyNC0wMi0yOSAyMzo1OSIpKQpgYGAKCiMjIyA8c3BhbiBzdHlsZT0iY29sb3I6IHllbGxvdzsiPkVqZXJjaWNpbyAyLiBHcmFmaWNhciBsYSBIdW1lZGFkIFJlbGF0aXZhIGVuIE1vbnRlcnJleSBkdXJhbnRlIEZlYnJlcm8gMjAyNDwvc3Bhbj4KYGBge3Igd2FybmluZz1GQUxTRX0KcGxvdChjbGltYV9tdHlfZmViJHZhbGlkLGNsaW1hX210eV9mZWIkcmVsaCx0eXBlPSJsIixtYWluPSJIdW1lZGFkIFJlbGF0aXZhIGVuIE1vbnRlcnJleSBkdXJhbnRlIEZlYnJlcm8gMjAyNCIsIHhsYWI9IkZlY2hhIiwgeWxhYj0iSHVtZWRhZCBSZWxhdGl2YSAoJSkiKQoKI1Byb21lZGlhciBIdW1lZGFkIFJlbGF0aXZhIERpYXJpYQpjbGltYV9tdHlfZmViJGRhdGUgPC0gYXMuRGF0ZShjbGltYV9tdHlfZmViJHZhbGlkKSAjQWdyZWdhbW9zIGNvbHVtbmEgcXVlIG5vIGV4aXNpdMOtYSwgbGEgY3VhbCBzZSBmdWUgaGFzdGEgZmluYWwgbGxhbWFkYSBEYXRlCmNtZmQgPC0gYWdncmVnYXRlKGNsaW1hX210eV9mZWIsIGJ5PWxpc3QoZGF0ZT1jbGltYV9tdHlfZmViJGRhdGUpLCBGVU49bWVhbikKCiMgR3JhZGljYXIgbGEgSHVtZWRhZCBSZWxhdGl2YSBwcm9tZWRpbyBwb3IgZMOtYQpwbG90KGNtZmQkZGF0ZSxjbWZkJHJlbGgsdHlwZT0ibCIsbWFpbj0iSHVtZWRhZCBSZWxhdGl2YSBlbiBNb250ZXJyZXkgZHVyYW50ZSBGZWJyZXJvIDIwMjQiLCB4bGFiPSJGZWNoYSIsIHlsYWI9Ikh1bWVkYWQgUmVsYXRpdmEgKCUpIikKYGBgCgojIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiB5ZWxsb3c7Ij5FamVyY2ljaW8gMy4gR3JhZmljYXIgbGEgdGVtcGVyYXR1cmEgcHJvbWVkaW8gZGlhcmlhIGR1cmFudGUgZmVicmVybyAyMDI0IGVuIFB1ZWJsYTwvc3Bhbj4KYGBge3Igd2FybmluZz1GQUxTRX0KI1ByaW1lcm8gZGViZW1vcyBvYnRlbmVyIGxvcyBkYXRvcyBkZSBzw7NsbyAyMDI0CmNsaW1hX3B1ZSA8LSByaWVtX21lYXN1cmVzKCJNTVBCIikKY2xpbWFfcHVlX2ZlYiA8LSBzdWJzZXQoY2xpbWFfcHVlLCB2YWxpZCA+PSBhcy5QT1NJWGN0KCIyMDI0LTAyLTAxIDAwOjAwMCIpICYgdmFsaWQgPD0gYXMuUE9TSVhjdCgiMjAyNC0wMi0yOSAyMzo1OSIpKQpgYGAKCgpgYGB7ciB3YXJuaW5nPUZBTFNFfQojQWdyZWdhciB0YWJsYSBkZWwgY2xpbWEgZW4gQ2VsY2l1cwpjbGltYV9wdWVfZmViJGNlbnRpIDwtIGNsaW1hX3B1ZV9mZWIkdG1wZi0zMiowLjU1NTYKY21mcCA8LSBhZ2dyZWdhdGUoY2xpbWFfcHVlX2ZlYiwgYnk9bGlzdChjZW50aT1jbGltYV9wdWVfZmViJGNlbnRpKSwgRlVOPW1lYW4pCmNtZnAkZGF0ZSA8LSBhcy5EYXRlKGNtZnAkdmFsaWQpIApgYGAKCgpgYGB7ciB3YXJuaW5nPUZBTFNFfQojIEdyYWRpY2FyIGxhIEh1bWVkYWQgUmVsYXRpdmEgcHJvbWVkaW8gcG9yIGTDrWEKcGxvdChjbWZwJGRhdGUsY21mcCRjZW50aS4xLHR5cGU9ImwiLG1haW49InRlbXBlcmF0dXJhIHByb21lZGlvIGRpYXJpYSBkdXJhbnRlIGZlYnJlcm8gMjAyNCBlbiBQdWVibGEiLCB4bGFiPSJUZW1wZXJhdHVyYSBQcm9tZWRpbyAoJSkiLCB5bGFiPSJGZWNoYSIpCmBgYAoKIyMjIDxzcGFuIHN0eWxlPSJjb2xvcjogeWVsbG93OyI+Q29uY2x1c2nDs248L3NwYW4+CkVuIGVzdGUgdHJhYmFqbyB1dGlsaXphbW9zIHVuYSByZWQgZGUgZXN0YWNpb25lcyBtZXRlb3JvbMOzZ2ljYXMgIioqQVNPUyoqIiAsIHBhcmEgcG9kZXIgcmV1bmlyIGluZm9ybWFjacOzbiBwYXJhIGVsIGFuw6FsaXNpcyBtZXRlb3JvbMOzZ2ljbywgeSBjbGltYXRvbMOzZ2ljby4gQWRlbcOhcyBzZSBlamVjdXRhcm9uIHZhcmlhcyBiaWJsaW90ZWNhcyB2aXN0YXMgZW4gY2xhc2UgY29tbyBlbCBnZ3Bsb3QyLCBwbG90bHkgeSBlbCB0aWR5dmVyc2UgcGFyYSBhZ3J1cGFyIGxvcyBkYXRvcyB5IGFuYWxpemFybG9zIGRlIGRpdmVyc2FzIHJlZ2lvbmVzIHkgYXPDrSBjb25zZWd1aXIgbG9zIHByb27Ds3N0aWNvcyBkZSB0ZW1wZXJhdHVyYS4gRXN0ZSBlbmZvcXVlIHB1ZWRlIHNlciBkZSBheXVkYSBwYXJhIGVsIHByb2Nlc28gZGUgc2VsZWNjacOzbiBlbiBsYXMgYWVyb2zDrW5lYXMuCgo=