SEMANA 2 - GESTIÓN ESTRATÉGICA DE DATOS

Integración de Datos - Var. Climatológicas

Ubicación aproximada:

library(leaflet)

punto <- c(-76.83748, -11.98748)

mapa_lima = leaflet(width = "100%") |>
  setView(lng = punto[1], lat = punto[2], zoom = 8) %>%
  addTiles() 

mapa_lima = addMarkers(mapa_lima, lng = punto[1], lat = punto[2], popup = "ESTACIÓN")

mapa_lima

Contexto

Para este trabajo se recopilaron los datos de variables climatológicas (temperatura promedio mensual, humedad relativa promedio mensual) para la misma ubicación en el territorio nacional, de 2 diferentes fuentes.

Ambas fuentes nos otorgan valores promedios mensuales para las variables temperatura y humedad relativa, entre otras.

Para los datos de POWER NASA, se consideró:

  • AÑO: 2020
  • Departamento: LIMA - Provincia: LIMA - Distrito: LURIGANCHO
  • Latitud: 11°97’ - Longitud:76°78’

library(readr)
data = read_csv("POWER NASA/clima_est.csv", 
                 skip = 13, show_col_types = FALSE)

temp_nasa = data[1,3:14]
temp_nasa = t(temp_nasa) #TEMPERATURA PROMEDIO POR MES - 2020 - POWER NASA

hum_nasa = data[2,3:14]
hum_nasa = t(hum_nasa) #HUMEDAD RELATIVA PROMEDIO POR MES - 2020 - POWER NASA

meses = c("JAN", "FEB", "MAR", "APR", "MAY", "JUN", "JUL", 
         "AUG", "SEP", "OCT", "NOV", "DEC")

temp_nasa_d = data.frame(month = meses,
                         temp = temp_nasa |> as.numeric())
temp_nasa_d$month = factor(temp_nasa_d$month, 
                           levels = meses)

hum_nasa_d = data.frame(month = meses,
                        hum_rel = hum_nasa |> as.numeric())
hum_nasa_d$month = factor(hum_nasa_d$month, 
                           levels = meses)

temp_nasa_d
##    month  temp
## 1    JAN 20.04
## 2    FEB 20.58
## 3    MAR 20.38
## 4    APR 19.69
## 5    MAY 18.83
## 6    JUN 17.15
## 7    JUL 16.52
## 8    AUG 16.79
## 9    SEP 17.34
## 10   OCT 18.27
## 11   NOV 17.85
## 12   DEC 18.40

Para los datos de SENAMHI, se consideró:

  • Estación: ÑAÑA - AÑO 2020
  • Departamento: LIMA - Provincia: LIMA - Distrito: LURIGANCHO
  • Latitud: 11°59’ - Longitud:76°50’

Debido a que SENAMHI nos proporciona los datos por cada hora, mes a mes, se recopilaron los datos de cada mes, se unieron y se calculó el promedio para las dos variables.

library(dplyr, warn.conflicts = FALSE)
lista_dataframes = list()

for (mes in 1:12) {
  nombre_archivo = paste0("2020-", mes, ".csv")  # Nombre del archivo CSV
  ruta_archivo = paste0("SENAMHI 2020/", nombre_archivo)  # Ruta del archivo CSV
  
  datos_mes = read_csv(ruta_archivo, 
                       skip = 10, show_col_types = FALSE)
  
  lista_dataframes[[mes]] = datos_mes  # Almacenar los datos en la lista
}

data_s = do.call(rbind, lista_dataframes)

#dim(data_s)

data_s$`AÑO / MES / DÍA` = as.Date(data_s$`AÑO / MES / DÍA`)
data_s$`TEMPERATURA (°C)` = as.numeric(data_s$`TEMPERATURA (°C)`)
data_s$`HUMEDAD (%)` = as.numeric(data_s$`HUMEDAD (%)`)

#dim(data_s)
data_s = data_s |> na.omit()
#dim(data_s)

senamhi = data_s |> group_by(MES = format(`AÑO / MES / DÍA`, "%Y-%m")) |>
  summarise(Prom_Temp = mean(`TEMPERATURA (°C)`),
            Prom_Hum = mean(`HUMEDAD (%)`))

# Ver los resultados
senamhi$month = meses
senamhi$month = factor(senamhi$month,
                       levels = meses)

senamhi = senamhi |> select(c(month, Prom_Temp, Prom_Hum))
senamhi
## # A tibble: 12 × 3
##    month Prom_Temp Prom_Hum
##    <fct>     <dbl>    <dbl>
##  1 JAN        22.5     77.5
##  2 FEB        23.7     74.2
##  3 MAR        24.3     67.9
##  4 APR        25.1     63.0
##  5 MAY        24.5     59.8
##  6 JUN        21.0     64.3
##  7 JUL        20.6     62.0
##  8 AUG        21.7     55.7
##  9 SEP        17.5     76.2
## 10 OCT        18.5     75.5
## 11 NOV        18.3     76.4
## 12 DEC        20.0     80.6

Análisis Exploratorio de Datos

Temperatura Promedio Mensual - Año 2020

library(ggplot2)

plot_df = data.frame(month = meses,
                     temp_nasa = temp_nasa_d$temp,
                     temp_senamhi = senamhi$Prom_Temp,
                     hum_nasa = hum_nasa_d$hum_rel,
                     hum_senamhi = senamhi$Prom_Hum)

plot_df$month = factor(plot_df$month,
                       levels = meses)

a = ggplot(plot_df, aes(x = month)) +
  geom_line(aes(y = temp_nasa, color = "NASA"), group = 1) +  
  geom_point(aes(y = temp_nasa, color = "NASA")) +
  
  geom_line(aes(y = temp_senamhi, color = "SENAMHI"), group = 1) +  
  geom_point(aes(y = temp_senamhi, color = "SENAMHI")) +
  
  labs(x = "MESES 2020",
       y = "TEMPERATURA - NASA vs SENAMHI",
       title = "Estación ÑAÑA - Año: 2020\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  theme_minimal() + 
  scale_color_manual(name = "Fuente de Datos", 
                     values = c("NASA" = "blue", "SENAMHI" = "orange"), 
                     labels = c("NASA", "SENAMHI")) +
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")

ggsave("Temp.png", plot = a, width = 10, height = 6, dpi = 300)

Humedad Relativa Promedio Mensual - Año 2020

b = ggplot(plot_df, aes(x = month)) +
  geom_line(aes(y = hum_nasa, color = "NASA"), group = 1) +  
  geom_point(aes(y = hum_nasa, color = "NASA")) +
  
  geom_line(aes(y = hum_senamhi, color = "SENAMHI"), group = 1) +  
  geom_point(aes(y = hum_senamhi, color = "SENAMHI")) +
  
  labs(x = "MESES 2020",
       y = "HUMEDAD RELATIVA - NASA vs SENAMHI",
       title = "Estación ÑAÑA - Año: 2020\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  theme_minimal() + 
  scale_color_manual(name = "Fuente de Datos", 
                     values = c("NASA" = "blue", "SENAMHI" = "orange"), 
                     labels = c("NASA", "SENAMHI"))+
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")


ggsave("Hum.png", plot = b, width = 10, height = 6, dpi = 300)

Error en la variable Temperatura:

Podemos observar que al comparar la temperatura promedio por mes, los datos obtenidos de la web de la NASA subestiman la temperatura real (captada por las estaciones climatológicas de SENAMHI). Sin embargo podemos observar que las observaciones no son tan alejadas de la realidad.

plot_df$error_temp = abs(plot_df$temp_nasa-plot_df$temp_senamhi)/plot_df$temp_senamhi
plot_df |> select(c(month, temp_nasa, temp_senamhi, error_temp))
##    month temp_nasa temp_senamhi  error_temp
## 1    JAN     20.04     22.54207 0.110995570
## 2    FEB     20.58     23.69181 0.131345402
## 3    MAR     20.38     24.29900 0.161282529
## 4    APR     19.69     25.06909 0.214570641
## 5    MAY     18.83     24.49444 0.231254253
## 6    JUN     17.15     20.96604 0.182010439
## 7    JUL     16.52     20.56667 0.196758509
## 8    AUG     16.79     21.69000 0.225910558
## 9    SEP     17.34     17.50379 0.009357282
## 10   OCT     18.27     18.51157 0.013049927
## 11   NOV     17.85     18.33394 0.026395643
## 12   DEC     18.40     20.04180 0.081918839
plot_df$error_temp |> mean()
## [1] 0.1320708

Realizamos el cálculo de los errores promedio. Valor absoluto de la desviación dividido entre el dato observado, y sacamos el promedio de los errores, obteniendo así 0.13. Podemos concluir que los datos experimentales tienen una desviacion promedio del 13% con respecto a los datos observados.

Error en la variable Humedad Relativa:

Con respecto a la Humedad Relativa, se puede apreciar graficamente una mayor presición y similitud de los datos. No podemos decir que los datos del modelo de la NASA subestiman o sobrestiman los datos captados por las estaciones climatológicas de SENAMHI debido a que las desviaciones son variadas a lo largo del año.

plot_df$error_hum = abs(plot_df$hum_nasa-plot_df$hum_senamhi)/plot_df$hum_senamhi
plot_df |> select(c(month, hum_nasa, hum_senamhi, error_hum))
##    month hum_nasa hum_senamhi  error_hum
## 1    JAN    74.06    77.52554 0.04470188
## 2    FEB    76.88    74.19684 0.03616274
## 3    MAR    75.69    67.87231 0.11518240
## 4    APR    70.25    63.03636 0.11443611
## 5    MAY    64.06    59.77778 0.07163569
## 6    JUN    65.44    64.30189 0.01769953
## 7    JUL    61.12    62.01235 0.01438981
## 8    AUG    58.56    55.70000 0.05134650
## 9    SEP    59.31    76.15909 0.22123545
## 10   OCT    60.25    75.49394 0.20192273
## 11   NOV    61.31    76.37274 0.19722665
## 12   DEC    72.31    80.64919 0.10340083
plot_df$error_hum |> mean()
## [1] 0.09911169

Podemos concluir que los datos experimentales tienen una desviacion promedio del 9% con respecto a los datos observados. Podemos decir que el modelo utilizado por la NASA tiene una presición mayor a lo que esperábamos para este punto de la región.

Análisis de los Errores

c = ggplot(plot_df, aes(x = month)) +
  geom_bar(aes(y = temp_nasa, fill = "NASA"), stat = "identity", 
           width = 0.5, color = "black") + 
  geom_line(aes(y = temp_senamhi, color = "SENAMHI"), 
            group = 1, size = 1) +
  labs(x = "MESES 2020",
       y = "Temperatura °C - NASA",
       title = "Estación ÑAÑA\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  scale_fill_manual(values = "#A2CD5A", name = "") +  # Asignar nombre a la leyenda de barras
  scale_color_manual(values = "red", name = "") +   # Asignar nombre a la leyenda de líneas
  scale_y_continuous(limits = c(0, 35), breaks = seq(0, 30, by = 10),
                     sec.axis = sec_axis(~.*1, name = "Temperatura °C - SENAMHI")) +
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")

ggsave("c.png", plot = c, width = 10, height = 6, dpi = 300)

Podemos observar claramente que, con respecto a la temperatura promedio, los meses de SEPTIEMBRE y OCTUBRE son los que presentan un error muy pequeño mientras que los meses de ABRIL y MAYO presentan un mayor error.

d = ggplot(plot_df, aes(x = month)) +
  geom_bar(aes(y = hum_nasa, fill = "NASA"), stat = "identity", 
           width = 0.5, color = "black") + 
  geom_line(aes(y = hum_senamhi, color = "SENAMHI"), 
            group = 1, size = 1) +
  labs(x = "MESES 2020",
       y = "Humedad Relativa - NASA",
       title = "Estación ÑAÑA\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  scale_fill_manual(values = "#A2CD5A", name = "") +  # Asignar nombre a la leyenda de barras
  scale_color_manual(values = "red", name = "") +   # Asignar nombre a la leyenda de líneas
  scale_y_continuous(limits = c(0, 120), breaks = seq(0, 120, by = 20),
                     sec.axis = sec_axis(~.*1, name = "Humedad Relativa - SENAMHI")) +
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")

ggsave("d.png", plot = d, width = 10, height = 6, dpi = 300)

Con respecto a la Humedad Relativa, los meses de SEPTIEMBRE, OCTUBRE y NOVIEMBRE son los que presentan un mayor error, mientras que los meses de JUNIO y JULIO presentan un error practicamente nulo.

Integración de Datos:

Debido a que los datos obtenidos de SENAMHI están por horas, se realizó la agrupación, obteniendo el promedio mensual de la temperatura, y humedad relativa, obteniendo así el promedio mensual para estos valores, y así poder realizar las comparaciones respectivas. A continuación se presentará la tabla obtenida de la integración de datos.

library(knitr)
library(kableExtra)
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
kable(plot_df) |> kable_styling(full_width = TRUE, 
                                bootstrap_options = "striped")
month temp_nasa temp_senamhi hum_nasa hum_senamhi error_temp error_hum
JAN 20.04 22.54207 74.06 77.52554 0.1109956 0.0447019
FEB 20.58 23.69181 76.88 74.19684 0.1313454 0.0361627
MAR 20.38 24.29901 75.69 67.87231 0.1612825 0.1151824
APR 19.69 25.06909 70.25 63.03636 0.2145706 0.1144361
MAY 18.83 24.49444 64.06 59.77778 0.2312543 0.0716357
JUN 17.15 20.96604 65.44 64.30189 0.1820104 0.0176995
JUL 16.52 20.56667 61.12 62.01235 0.1967585 0.0143898
AUG 16.79 21.69000 58.56 55.70000 0.2259106 0.0513465
SEP 17.34 17.50379 59.31 76.15909 0.0093573 0.2212355
OCT 18.27 18.51157 60.25 75.49394 0.0130499 0.2019227
NOV 17.85 18.33394 61.31 76.37274 0.0263956 0.1972267
DEC 18.40 20.04180 72.31 80.64919 0.0819188 0.1034008

Análisis por Años - 2000 - 2010

data_h_senamhi = read.table("SENAMHI 2020/hist_senamhi.txt")

colnames(data_h_senamhi) = c("AÑO", "MES","DIA", 
                             "H.Relativa", "Temp.Max", "Temp.Min")

data_h_senamhi = data_h_senamhi = data_h_senamhi |> 
  filter(AÑO >= 2000 & AÑO <= 2010)

data_h_senamhi |> head(5)
##    AÑO MES DIA H.Relativa Temp.Max Temp.Min
## 1 2000   1   1          0     25.4     17.2
## 2 2000   1   2          0     25.0     16.8
## 3 2000   1   3          0     24.8     17.4
## 4 2000   1   4          0     25.6     17.6
## 5 2000   1   5          0     25.8     17.6
library(tidyr)

data_h_nasa = read_csv("POWER NASA/años.csv", 
                       skip = 10, show_col_types = FALSE)

data_h_nasa = pivot_longer(data_h_nasa, cols = -c(PARAMETER, YEAR), 
                           names_to = "MES", values_to = "VALOR")

data_h_nasa = pivot_wider(data_h_nasa, names_from = PARAMETER, 
                          values_from = VALOR)

colnames(data_h_nasa) = c("AÑO", "MES", "Temp.Max", "Temp.Min")

data_h_nasa = data_h_nasa |> filter(MES != "ANN")

data_h_nasa |> head()
## # A tibble: 6 × 4
##     AÑO MES   Temp.Max Temp.Min
##   <dbl> <chr>    <dbl>    <dbl>
## 1  2000 JAN       23.6     14.6
## 2  2000 FEB       24.2     15.6
## 3  2000 MAR       24.7     15.4
## 4  2000 APR       25.2     14.6
## 5  2000 MAY       23.8     12.6
## 6  2000 JUN       22.6     11.7

Podemos observar que los datos históricos obtenidos de SENAMHI presentan una estructura diferente. Estos datos a diferencia de los obtenidos de la web de la NASA, se encuentran en dias, meses y años. A continuación vamos a promediar la temperatura maxima y mínima para que los dos conjuntos de datos estén en un formato similar.

data_h_senamhi = data_h_senamhi |> group_by(AÑO,MES) |>
  summarize(P_Temp_Max = mean(Temp.Max),
            P_Temp_Min = mean(Temp.Min))
## `summarise()` has grouped output by 'AÑO'. You can override using the `.groups`
## argument.
data_h_senamhi$MES.n = data_h_senamhi$MES

data_h_senamhi$MES = factor(data_h_senamhi$MES, labels = month.abb)

data_h_senamhi |> head()
## # A tibble: 6 × 5
## # Groups:   AÑO [1]
##     AÑO MES   P_Temp_Max P_Temp_Min MES.n
##   <int> <fct>      <dbl>      <dbl> <int>
## 1  2000 Jan         26.2       6.54     1
## 2  2000 Feb         27.1      18.1      2
## 3  2000 Mar         26.9       6.03     3
## 4  2000 Apr         22.2      13.2      4
## 5  2000 May         25        15.8      5
## 6  2000 Jun         22.3      12.1      6

A continuación procedemos a realizar la integración de los datos históricos de las diferentes fuentes.

Debido a que existen fechas que por errores en la recolección de los datos figuran como valores negativos, serán remplazados por el promedio estimado por el modelo de la NASA.

data_historica = data.frame(AÑO = data_h_nasa$AÑO,
                            MES = data_h_nasa$MES,
                            MES.n = data_h_senamhi$MES.n,
                            Temp.Max.Nasa = data_h_nasa$Temp.Max,
                            Temp.Min.Nasa = data_h_nasa$Temp.Min,
                            Temp.Max.Senamhi = data_h_senamhi$P_Temp_Max,
                            Temp.Min.Senamhi = data_h_senamhi$P_Temp_Min)

data_historica$Temp.Max.Senamhi = ifelse(data_historica$Temp.Max.Senamhi < 10, 
                                         mean(data_historica$Temp.Max.Nasa), 
                                         data_historica$Temp.Max.Senamhi)

data_historica$Temp.Min.Senamhi = ifelse(data_historica$Temp.Min.Senamhi < 10, 
                                         mean(data_historica$Temp.Min.Nasa), 
                                         data_historica$Temp.Min.Senamhi)

data_historica |> kable() |> 
  kable_styling(full_width = TRUE, bootstrap_options = "striped")
AÑO MES MES.n Temp.Max.Nasa Temp.Min.Nasa Temp.Max.Senamhi Temp.Min.Senamhi
2000 JAN 1 23.59 14.58 26.21935 13.41417
2000 FEB 2 24.23 15.55 27.10345 18.12414
2000 MAR 3 24.72 15.37 26.85161 13.41417
2000 APR 4 25.24 14.61 22.19667 13.17000
2000 MAY 5 23.78 12.55 25.00000 15.80000
2000 JUN 6 22.63 11.72 22.33333 12.07333
2000 JUL 7 22.30 11.26 21.39355 12.06452
2000 AUG 8 23.15 11.94 20.76774 12.58710
2000 SEP 9 23.10 12.10 23.95621 12.44000
2000 OCT 10 23.55 12.99 24.28387 12.97419
2000 NOV 11 24.31 11.93 25.11333 13.40000
2000 DEC 12 24.38 14.33 25.38065 15.19355
2001 JAN 1 23.42 15.50 26.90323 13.41417
2001 FEB 2 25.84 16.01 28.55000 18.53571
2001 MAR 3 25.36 16.33 29.17419 19.56129
2001 APR 4 25.42 14.56 26.61333 17.00667
2001 MAY 5 23.68 12.26 25.03871 13.66452
2001 JUN 6 23.34 11.65 20.33333 13.41417
2001 JUL 7 22.66 11.45 12.41290 11.05161
2001 AUG 8 23.69 11.30 17.39677 11.08387
2001 SEP 9 22.08 11.24 18.93667 12.52000
2001 OCT 10 22.80 12.53 22.76129 12.69032
2001 NOV 11 22.49 12.37 20.85667 15.21333
2001 DEC 12 24.08 13.08 25.46452 15.83871
2002 JAN 1 25.08 14.49 26.88387 16.76129
2002 FEB 2 25.05 16.37 17.75714 17.26429
2002 MAR 3 25.92 16.52 26.98710 18.54194
2002 APR 4 25.62 14.13 25.98667 16.40000
2002 MAY 5 25.31 14.09 25.40645 14.47742
2002 JUN 6 23.26 11.91 23.54667 12.82000
2002 JUL 7 21.83 10.77 23.95621 13.41417
2002 AUG 8 23.40 11.93 23.95621 13.41417
2002 SEP 9 23.76 13.01 23.95621 13.41417
2002 OCT 10 23.73 13.31 23.95621 13.41417
2002 NOV 11 23.76 13.57 23.95621 13.41417
2002 DEC 12 24.73 15.06 23.95621 13.41417
2003 JAN 1 25.93 15.47 23.95621 13.41417
2003 FEB 2 25.91 16.50 27.55000 19.27857
2003 MAR 3 25.15 16.64 26.92581 18.75484
2003 APR 4 25.08 14.44 26.20667 16.37333
2003 MAY 5 24.80 13.29 25.30323 14.76129
2003 JUN 6 23.40 11.82 23.95621 13.41417
2003 JUL 7 23.06 11.53 22.60000 12.90323
2003 AUG 8 23.16 11.89 23.96129 12.16129
2003 SEP 9 22.90 11.62 23.90000 12.69333
2003 OCT 10 23.18 12.52 24.89032 13.41417
2003 NOV 11 24.10 13.08 25.29333 14.82667
2003 DEC 12 24.21 15.33 25.73548 13.41417
2004 JAN 1 24.96 14.65 26.69677 17.27742
2004 FEB 2 25.21 16.43 27.70000 18.21379
2004 MAR 3 27.21 16.28 27.50323 18.81935
2004 APR 4 25.97 13.37 26.13333 16.40000
2004 MAY 5 23.91 12.19 24.19355 13.41417
2004 JUN 6 22.87 11.93 14.82000 11.63333
2004 JUL 7 22.27 11.33 23.32258 11.63226
2004 AUG 8 22.98 10.39 23.24516 12.29032
2004 SEP 9 23.60 12.90 22.60000 13.07333
2004 OCT 10 22.91 13.00 23.78710 13.60645
2004 NOV 11 23.49 13.90 24.57333 14.12667
2004 DEC 12 23.53 15.08 25.69677 15.35484
2005 JAN 1 25.20 15.65 27.24516 17.27097
2005 FEB 2 25.72 16.08 27.38571 13.41417
2005 MAR 3 24.75 16.40 26.61290 18.77419
2005 APR 4 26.40 14.59 26.34000 17.73333
2005 MAY 5 24.84 12.30 24.68387 10.36452
2005 JUN 6 23.28 11.69 23.64667 12.16000
2005 JUL 7 22.92 11.15 22.58710 11.51613
2005 AUG 8 23.37 11.47 23.01290 11.50968
2005 SEP 9 23.05 12.06 22.66000 12.50000
2005 OCT 10 22.25 12.21 24.05161 13.33548
2005 NOV 11 23.66 12.03 24.79333 14.24000
2005 DEC 12 23.68 13.67 21.26129 15.60000
2006 JAN 1 24.34 14.80 26.53548 17.58065
2006 FEB 2 25.90 16.73 27.10357 18.76429
2006 MAR 3 25.05 16.45 27.04516 18.41290
2006 APR 4 24.26 14.58 26.57333 17.55333
2006 MAY 5 24.17 11.69 25.23871 16.49677
2006 JUN 6 23.00 12.15 25.03667 15.77333
2006 JUL 7 24.14 10.98 23.64516 13.97419
2006 AUG 8 23.56 12.40 24.10968 13.32258
2006 SEP 9 22.83 12.61 23.95621 13.61333
2006 OCT 10 23.28 12.80 24.89032 14.29032
2006 NOV 11 23.69 13.65 25.31333 14.98000
2006 DEC 12 23.39 14.63 25.71613 15.66452
2007 JAN 1 25.04 16.23 27.31613 17.65806
2007 FEB 2 25.17 15.66 27.29286 18.38571
2007 MAR 3 25.19 16.21 26.65806 18.10968
2007 APR 4 25.31 15.17 25.84667 16.86667
2007 MAY 5 23.65 12.37 24.94839 14.60645
2007 JUN 6 22.78 11.34 23.39333 12.21333
2007 JUL 7 22.58 11.54 24.30968 12.58710
2007 AUG 8 22.19 10.25 23.63871 12.69032
2007 SEP 9 22.57 12.04 23.95333 13.16000
2007 OCT 10 22.36 11.31 24.47742 14.05806
2007 NOV 11 23.00 12.55 24.88667 14.46000
2007 DEC 12 24.01 12.71 25.54194 15.25161
2008 JAN 1 24.22 15.46 26.42581 17.20000
2008 FEB 2 24.83 15.58 27.20000 18.48966
2008 MAR 3 25.25 15.52 26.46452 18.36129
2008 APR 4 24.36 14.37 25.99333 17.50000
2008 MAY 5 23.38 11.41 25.09032 15.97419
2008 JUN 6 22.68 11.84 23.68000 12.85333
2008 JUL 7 22.82 11.47 22.84516 12.05806
2008 AUG 8 22.61 11.87 21.57419 11.79355
2008 SEP 9 22.80 12.05 22.32667 12.78000
2008 OCT 10 23.14 12.00 22.75484 13.39355
2008 NOV 11 23.83 13.34 24.35667 15.02000
2008 DEC 12 23.33 13.88 24.91613 16.18065
2009 JAN 1 24.25 15.03 25.83226 17.25161
2009 FEB 2 24.70 15.48 21.45357 18.22143
2009 MAR 3 24.61 15.77 25.56774 18.59355
2009 APR 4 25.26 14.06 25.76000 17.18667
2009 MAY 5 24.21 13.98 24.33548 15.09032
2009 JUN 6 23.26 11.18 23.06667 12.10667
2009 JUL 7 23.14 12.33 14.55484 12.45806
2009 AUG 8 23.27 11.84 22.91613 12.49032
2009 SEP 9 23.93 12.58 23.46000 13.09333
2009 OCT 10 23.01 12.63 24.13871 13.98065
2009 NOV 11 24.52 13.34 24.63333 14.63333
2009 DEC 12 24.18 15.04 24.89032 15.10968
2010 JAN 1 25.37 15.82 25.63226 16.27097
2010 FEB 2 25.70 16.95 26.73571 17.68571
2010 MAR 3 27.26 16.33 26.34839 17.59355
2010 APR 4 24.95 15.47 25.72000 16.10667
2010 MAY 5 25.29 13.24 23.75484 14.60000
2010 JUN 6 23.55 12.05 22.06667 12.19333
2010 JUL 7 22.62 10.70 22.12903 10.95484
2010 AUG 8 22.71 10.90 22.33226 10.33548
2010 SEP 9 23.76 11.62 19.24333 12.16667
2010 OCT 10 22.60 12.02 23.49677 13.50968
2010 NOV 11 22.02 11.94 23.28000 14.24000
2010 DEC 12 23.14 13.48 24.64516 14.82581

Análisis Exploratorio

Temperatura Máxima

data_historica$AÑO_MES = as.Date(paste(data_historica$AÑO, 
                                       data_historica$MES.n, "01", sep = "-"))

ggplot(data_historica, aes(x = AÑO_MES)) +
  geom_line(aes(y = Temp.Max.Nasa, color = "NASA"), group = 1) +  
  geom_point(aes(y = Temp.Max.Nasa, color = "NASA")) +
  
  geom_line(aes(y = Temp.Max.Senamhi, color = "SENAMHI"), group = 1) +  
  geom_point(aes(y = Temp.Max.Senamhi, color = "SENAMHI")) +
  
  labs(x = "",
       y = "Temperatura Máxima",
       title = "Estación ÑAÑA - Años: 2000 - 2010\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")

Podemos observar graficamente que, para la temperatura máxima, los valores obtenidos por el modelo utilizado por la NASA se aproxima bastante bien a los valores obtenidos por las mediciones realizadas por las estaciones de control de SENAMHI.

Podemos mencionar que los datos obtenidos del modelo de la NASA son más uniformes en el tiempo que los datos medidos por SENAMHI. Se sospecha que se debe a errores humanos de medición ya que se registraron temperaturas poco usuales en esta región del país. Se necesita un análisis mas profundo de estos valores atípicos.

data_historica$Error.Temp.Max = 100*abs(data_historica$Temp.Max.Nasa - 
  data_historica$Temp.Max.Senamhi)/data_historica$Temp.Max.Senamhi

data_historica$Error.Temp.Max |> mean()
## [1] 7.066962

Existe en promedio 7% de error en los datos obtenidos por el modelo de la NASA frente a los datos medidos por la estación meteorológica de SENAMHI.

data_historica |> filter(Error.Temp.Max > 20) |> kable() |> 
  kable_styling(full_width = TRUE, bootstrap_options = "striped")
AÑO MES MES.n Temp.Max.Nasa Temp.Min.Nasa Temp.Max.Senamhi Temp.Min.Senamhi AÑO_MES Error.Temp.Max
2001 JUL 7 22.66 11.45 12.41290 11.05161 2001-07-01 82.55198
2001 AUG 8 23.69 11.30 17.39677 11.08387 2001-08-01 36.17467
2002 FEB 2 25.05 16.37 17.75714 17.26429 2002-02-01 41.06999
2004 JUN 6 22.87 11.93 14.82000 11.63333 2004-06-01 54.31849
2009 JUL 7 23.14 12.33 14.55484 12.45806 2009-07-01 58.98493
2010 SEP 9 23.76 11.62 19.24333 12.16667 2010-09-01 23.47133

Podemos observar que los errores mas grandes los tenemos al comparar los datos y las mediciones hechas para Julio del 2001, Junio del 204, y Julio del 2007.

Temperatura Mínima

ggplot(data_historica, aes(x = AÑO_MES)) +
  geom_line(aes(y = Temp.Min.Nasa, color = "NASA"), group = 1) +  
  geom_point(aes(y = Temp.Min.Nasa, color = "NASA")) +
  
  geom_line(aes(y = Temp.Min.Senamhi, color = "SENAMHI"), group = 1) +  
  geom_point(aes(y = Temp.Min.Senamhi, color = "SENAMHI")) +
  
  labs(x = "",
       y = "Temperatura Mínima",
       title = "Estación ÑAÑA - Años: 2000 - 2010\nDepartamento: Lima, Provincia: Lima, Distrito: Lima") + 
  theme_minimal() +
  theme(plot.title = element_text(hjust = 0.5, face = "bold"),
        legend.position = "top")

Podemos observar graficamente que, para la temperatura mínima, los valores obtenidos por el modelo utilizado por la NASA se aproxima bastante bien a los valores obtenidos por las mediciones realizadas por las estaciones de control de SENAMHI.

En este caso, pareciera que existe un error promedio bajo. A diferencia del análisis de la temperatura máxima, en este caso no se observan datos tan atípicos o extraños que alteren los ciclos uniformes de temperatura.

data_historica$Error.Temp.Min = 100*abs(data_historica$Temp.Min.Nasa - 
  data_historica$Temp.Min.Senamhi)/data_historica$Temp.Min.Senamhi

data_historica$Error.Temp.Min |> mean()
## [1] 10.12069

A pesar de que, graficamente pareciera que existe un error promedio mejor al obtenido de la variable Temperatura Máxima, en este caso, existe un mayor en aproximadamente 3%. El error promedio para los datos obtenidos por el modelo de la NASA ftrente a los medidos por SENAMHI, considerando la temperatura mínima, es del 10.12%.

data_historica |> filter(Error.Temp.Min > 15) |> kable() |> 
  kable_styling(full_width = TRUE, bootstrap_options = "striped")
AÑO MES MES.n Temp.Max.Nasa Temp.Min.Nasa Temp.Max.Senamhi Temp.Min.Senamhi AÑO_MES Error.Temp.Max Error.Temp.Min
2000 MAY 5 23.78 12.55 25.00000 15.80000 2000-05-01 4.8800000 20.56962
2001 JAN 1 23.42 15.50 26.90323 13.41417 2001-01-01 12.9472422 15.54948
2001 MAR 3 25.36 16.33 29.17419 19.56129 2001-03-01 13.0738611 16.51880
2001 NOV 11 22.49 12.37 20.85667 15.21333 2001-11-01 7.8312290 18.68975
2001 DEC 12 24.08 13.08 25.46452 15.83871 2001-12-01 5.4370408 17.41752
2002 JUL 7 21.83 10.77 23.95621 13.41417 2002-07-01 8.8754103 19.71175
2003 JAN 1 25.93 15.47 23.95621 13.41417 2003-01-01 8.2391484 15.32584
2004 JAN 1 24.96 14.65 26.69677 17.27742 2004-01-01 6.5055582 15.20724
2004 APR 4 25.97 13.37 26.13333 16.40000 2004-04-01 0.6250000 18.47561
2004 AUG 8 22.98 10.39 23.24516 12.29032 2004-08-01 1.1407161 15.46194
2005 FEB 2 25.72 16.08 27.38571 13.41417 2005-02-01 6.0824204 19.87327
2005 APR 4 26.40 14.59 26.34000 17.73333 2005-04-01 0.2277904 17.72556
2005 MAY 5 24.84 12.30 24.68387 10.36452 2005-05-01 0.6325144 18.67414
2005 NOV 11 23.66 12.03 24.79333 14.24000 2005-11-01 4.5711213 15.51966
2006 JAN 1 24.34 14.80 26.53548 17.58065 2006-01-01 8.2737661 15.81651
2006 APR 4 24.26 14.58 26.57333 17.55333 2006-04-01 8.7054691 16.93885
2006 MAY 5 24.17 11.69 25.23871 16.49677 2006-05-01 4.2344070 29.13766
2006 JUN 6 23.00 12.15 25.03667 15.77333 2006-06-01 8.1347357 22.97126
2006 JUL 7 24.14 10.98 23.64516 13.97419 2006-07-01 2.0927694 21.42659
2007 MAY 5 23.65 12.37 24.94839 14.60645 2007-05-01 5.2042927 15.31140
2007 AUG 8 22.19 10.25 23.63871 12.69032 2007-08-01 6.1285480 19.22979
2007 OCT 10 22.36 11.31 24.47742 14.05806 2007-10-01 8.6505008 19.54796
2007 DEC 12 24.01 12.71 25.54194 15.25161 2007-12-01 5.9977267 16.66455
2008 FEB 2 24.83 15.58 27.20000 18.48966 2008-02-01 8.7132353 15.73667
2008 MAR 3 25.25 15.52 26.46452 18.36129 2008-03-01 4.5892248 15.47435
2008 APR 4 24.36 14.37 25.99333 17.50000 2008-04-01 6.2836625 17.88571
2008 MAY 5 23.38 11.41 25.09032 15.97419 2008-05-01 6.8166624 28.57229
2009 FEB 2 24.70 15.48 21.45357 18.22143 2009-02-01 15.1323456 15.04508
2009 MAR 3 24.61 15.77 25.56774 18.59355 2009-03-01 3.7458996 15.18563
2009 APR 4 25.26 14.06 25.76000 17.18667 2009-04-01 1.9409938 18.19240
2010 NOV 11 22.02 11.94 23.28000 14.24000 2010-11-01 5.4123711 16.15169

En este caso los errores parecen ser bastante uniformes a lo largo de todas las mediciones y comparaciones. No podemos mencionar una fecha donde exista un mayor error debido a que es muy uniforme a lo largo de los 10 años utilizados para este análisis.

Integración de Datos

Para finalizar este trabajo, se realizó la exportación de los datos finales obtenidos, transformados y estructurados adecuadamente con el que se hizo el análisis, con la intención de resguardarlos, y utilizarlos posteriormente para otro análisis en este u otro software.

write.csv(data_historica, 
          "Integración_SENAMHI_NASA_2000-2010.csv", 
          row.names = FALSE)

kable(data_historica) |> kable_styling(full_width = TRUE, 
                                bootstrap_options = "striped")
AÑO MES MES.n Temp.Max.Nasa Temp.Min.Nasa Temp.Max.Senamhi Temp.Min.Senamhi AÑO_MES Error.Temp.Max Error.Temp.Min
2000 JAN 1 23.59 14.58 26.21935 13.41417 2000-01-01 10.0282972 8.6910604
2000 FEB 2 24.23 15.55 27.10345 18.12414 2000-02-01 10.6017812 14.2028158
2000 MAR 3 24.72 15.37 26.85161 13.41417 2000-03-01 7.9384911 14.5803566
2000 APR 4 25.24 14.61 22.19667 13.17000 2000-04-01 13.7107674 10.9339408
2000 MAY 5 23.78 12.55 25.00000 15.80000 2000-05-01 4.8800000 20.5696203
2000 JUN 6 22.63 11.72 22.33333 12.07333 2000-06-01 1.3283582 2.9265599
2000 JUL 7 22.30 11.26 21.39355 12.06452 2000-07-01 4.2370326 6.6684492
2000 AUG 8 23.15 11.94 20.76774 12.58710 2000-08-01 11.4709537 5.1409534
2000 SEP 9 23.10 12.10 23.95621 12.44000 2000-09-01 3.5740714 2.7331190
2000 OCT 10 23.55 12.99 24.28387 12.97419 2000-10-01 3.0220510 0.1218299
2000 NOV 11 24.31 11.93 25.11333 13.40000 2000-11-01 3.1988320 10.9701493
2000 DEC 12 24.38 14.33 25.38065 15.19355 2000-12-01 3.9425521 5.6836518
2001 JAN 1 23.42 15.50 26.90323 13.41417 2001-01-01 12.9472422 15.5494813
2001 FEB 2 25.84 16.01 28.55000 18.53571 2001-02-01 9.4921191 13.6262042
2001 MAR 3 25.36 16.33 29.17419 19.56129 2001-03-01 13.0738611 16.5187995
2001 APR 4 25.42 14.56 26.61333 17.00667 2001-04-01 4.4839679 14.3865151
2001 MAY 5 23.68 12.26 25.03871 13.66452 2001-05-01 5.4264365 10.2785647
2001 JUN 6 23.34 11.65 20.33333 13.41417 2001-06-01 14.7868852 13.1515189
2001 JUL 7 22.66 11.45 12.41290 11.05161 2001-07-01 82.5519751 3.6047869
2001 AUG 8 23.69 11.30 17.39677 11.08387 2001-08-01 36.1746709 1.9499418
2001 SEP 9 22.08 11.24 18.93667 12.52000 2001-09-01 16.5991903 10.2236422
2001 OCT 10 22.80 12.53 22.76129 12.69032 2001-10-01 0.1700680 1.2633452
2001 NOV 11 22.49 12.37 20.85667 15.21333 2001-11-01 7.8312290 18.6897458
2001 DEC 12 24.08 13.08 25.46452 15.83871 2001-12-01 5.4370408 17.4175153
2002 JAN 1 25.08 14.49 26.88387 16.76129 2002-01-01 6.7098632 13.5508083
2002 FEB 2 25.05 16.37 17.75714 17.26429 2002-02-01 41.0699920 5.1799752
2002 MAR 3 25.92 16.52 26.98710 18.54194 2002-03-01 3.9540999 10.9046625
2002 APR 4 25.62 14.13 25.98667 16.40000 2002-04-01 1.4109800 13.8414634
2002 MAY 5 25.31 14.09 25.40645 14.47742 2002-05-01 0.3796343 2.6760250
2002 JUN 6 23.26 11.91 23.54667 12.82000 2002-06-01 1.2174405 7.0982839
2002 JUL 7 21.83 10.77 23.95621 13.41417 2002-07-01 8.8754103 19.7117475
2002 AUG 8 23.40 11.93 23.95621 13.41417 2002-08-01 2.3217866 11.0641734
2002 SEP 9 23.76 13.01 23.95621 13.41417 2002-09-01 0.8190448 3.0129838
2002 OCT 10 23.73 13.31 23.95621 13.41417 2002-10-01 0.9442733 0.7765422
2002 NOV 11 23.76 13.57 23.95621 13.41417 2002-11-01 0.8190448 1.1617072
2002 DEC 12 24.73 15.06 23.95621 13.41417 2002-12-01 3.2300093 12.2693670
2003 JAN 1 25.93 15.47 23.95621 13.41417 2003-01-01 8.2391484 15.3258371
2003 FEB 2 25.91 16.50 27.55000 19.27857 2003-02-01 5.9528131 14.4127455
2003 MAR 3 25.15 16.64 26.92581 18.75484 2003-03-01 6.5951839 11.2762298
2003 APR 4 25.08 14.44 26.20667 16.37333 2003-04-01 4.2991605 11.8078176
2003 MAY 5 24.80 13.29 25.30323 14.76129 2003-05-01 1.9887812 9.9672203
2003 JUN 6 23.40 11.82 23.95621 13.41417 2003-06-01 2.3217866 11.8842020
2003 JUL 7 23.06 11.53 22.60000 12.90323 2003-07-01 2.0353982 10.6425000
2003 AUG 8 23.16 11.89 23.96129 12.16129 2003-08-01 3.3441034 2.2307692
2003 SEP 9 22.90 11.62 23.90000 12.69333 2003-09-01 4.1841004 8.4558824
2003 OCT 10 23.18 12.52 24.89032 13.41417 2003-10-01 6.8714360 6.6658384
2003 NOV 11 24.10 13.08 25.29333 14.82667 2003-11-01 4.7179758 11.7805755
2003 DEC 12 24.21 15.33 25.73548 13.41417 2003-12-01 5.9275508 14.2821644
2004 JAN 1 24.96 14.65 26.69677 17.27742 2004-01-01 6.5055582 15.2072442
2004 FEB 2 25.21 16.43 27.70000 18.21379 2004-02-01 8.9891697 9.7936388
2004 MAR 3 27.21 16.28 27.50323 18.81935 2004-03-01 1.0661506 13.4933150
2004 APR 4 25.97 13.37 26.13333 16.40000 2004-04-01 0.6250000 18.4756098
2004 MAY 5 23.91 12.19 24.19355 13.41417 2004-05-01 1.1720000 9.1259241
2004 JUN 6 22.87 11.93 14.82000 11.63333 2004-06-01 54.3184885 2.5501433
2004 JUL 7 22.27 11.33 23.32258 11.63226 2004-07-01 4.5131397 2.5984470
2004 AUG 8 22.98 10.39 23.24516 12.29032 2004-08-01 1.1407161 15.4619423
2004 SEP 9 23.60 12.90 22.60000 13.07333 2004-09-01 4.4247788 1.3258542
2004 OCT 10 22.91 13.00 23.78710 13.60645 2004-10-01 3.6872796 4.4570887
2004 NOV 11 23.49 13.90 24.57333 14.12667 2004-11-01 4.4085730 1.6045304
2004 DEC 12 23.53 15.08 25.69677 15.35484 2004-12-01 8.4320864 1.7899160
2005 JAN 1 25.20 15.65 27.24516 17.27097 2005-01-01 7.5065120 9.3855062
2005 FEB 2 25.72 16.08 27.38571 13.41417 2005-02-01 6.0824204 19.8732683
2005 MAR 3 24.75 16.40 26.61290 18.77419 2005-03-01 7.0000000 12.6460481
2005 APR 4 26.40 14.59 26.34000 17.73333 2005-04-01 0.2277904 17.7255639
2005 MAY 5 24.84 12.30 24.68387 10.36452 2005-05-01 0.6325144 18.6741363
2005 JUN 6 23.28 11.69 23.64667 12.16000 2005-06-01 1.5506061 3.8651316
2005 JUL 7 22.92 11.15 22.58710 11.51613 2005-07-01 1.4738646 3.1792717
2005 AUG 8 23.37 11.47 23.01290 11.50968 2005-08-01 1.5517241 0.3447309
2005 SEP 9 23.05 12.06 22.66000 12.50000 2005-09-01 1.7210944 3.5200000
2005 OCT 10 22.25 12.21 24.05161 13.33548 2005-10-01 7.4906116 8.4397678
2005 NOV 11 23.66 12.03 24.79333 14.24000 2005-11-01 4.5711213 15.5196629
2005 DEC 12 23.68 13.67 21.26129 15.60000 2005-12-01 11.3761190 12.3717949
2006 JAN 1 24.34 14.80 26.53548 17.58065 2006-01-01 8.2737661 15.8165138
2006 FEB 2 25.90 16.73 27.10357 18.76429 2006-02-01 4.4406378 10.8412638
2006 MAR 3 25.05 16.45 27.04516 18.41290 2006-03-01 7.3771469 10.6604765
2006 APR 4 24.26 14.58 26.57333 17.55333 2006-04-01 8.7054691 16.9388530
2006 MAY 5 24.17 11.69 25.23871 16.49677 2006-05-01 4.2344070 29.1376613
2006 JUN 6 23.00 12.15 25.03667 15.77333 2006-06-01 8.1347357 22.9712595
2006 JUL 7 24.14 10.98 23.64516 13.97419 2006-07-01 2.0927694 21.4265928
2006 AUG 8 23.56 12.40 24.10968 13.32258 2006-08-01 2.2799037 6.9249395
2006 SEP 9 22.83 12.61 23.95621 13.61333 2006-09-01 4.7011277 7.3702253
2006 OCT 10 23.28 12.80 24.89032 14.29032 2006-10-01 6.4696734 10.4288939
2006 NOV 11 23.69 13.65 25.31333 14.98000 2006-11-01 6.4129576 8.8785047
2006 DEC 12 23.39 14.63 25.71613 15.66452 2006-12-01 9.0454089 6.6042010
2007 JAN 1 25.04 16.23 27.31613 17.65806 2007-01-01 8.3325461 8.0873219
2007 FEB 2 25.17 15.66 27.29286 18.38571 2007-02-01 7.7780686 14.8251748
2007 MAR 3 25.19 16.21 26.65806 18.10968 2007-03-01 5.5070184 10.4898468
2007 APR 4 25.31 15.17 25.84667 16.86667 2007-04-01 2.0763477 10.0592885
2007 MAY 5 23.65 12.37 24.94839 14.60645 2007-05-01 5.2042927 15.3113958
2007 JUN 6 22.78 11.34 23.39333 12.21333 2007-06-01 2.6218296 7.1506550
2007 JUL 7 22.58 11.54 24.30968 12.58710 2007-07-01 7.1151805 8.3188109
2007 AUG 8 22.19 10.25 23.63871 12.69032 2007-08-01 6.1285480 19.2297916
2007 SEP 9 22.57 12.04 23.95333 13.16000 2007-09-01 5.7751183 8.5106383
2007 OCT 10 22.36 11.31 24.47742 14.05806 2007-10-01 8.6505008 19.5479578
2007 NOV 11 23.00 12.55 24.88667 14.46000 2007-11-01 7.5810340 13.2088520
2007 DEC 12 24.01 12.71 25.54194 15.25161 2007-12-01 5.9977267 16.6645516
2008 JAN 1 24.22 15.46 26.42581 17.20000 2008-01-01 8.3471680 10.1162791
2008 FEB 2 24.83 15.58 27.20000 18.48966 2008-02-01 8.7132353 15.7366654
2008 MAR 3 25.25 15.52 26.46452 18.36129 2008-03-01 4.5892248 15.4743500
2008 APR 4 24.36 14.37 25.99333 17.50000 2008-04-01 6.2836625 17.8857143
2008 MAY 5 23.38 11.41 25.09032 15.97419 2008-05-01 6.8166624 28.5722940
2008 JUN 6 22.68 11.84 23.68000 12.85333 2008-06-01 4.2229730 7.8838174
2008 JUL 7 22.82 11.47 22.84516 12.05806 2008-07-01 0.1101384 4.8769395
2008 AUG 8 22.61 11.87 21.57419 11.79355 2008-08-01 4.8011364 0.6482495
2008 SEP 9 22.80 12.05 22.32667 12.78000 2008-09-01 2.1200358 5.7120501
2008 OCT 10 23.14 12.00 22.75484 13.39355 2008-10-01 1.6926566 10.4046243
2008 NOV 11 23.83 13.34 24.35667 15.02000 2008-11-01 2.1623101 11.1850866
2008 DEC 12 23.33 13.88 24.91613 16.18065 2008-12-01 6.3658726 14.2185008
2009 JAN 1 24.25 15.03 25.83226 17.25161 2009-01-01 6.1251249 12.8777113
2009 FEB 2 24.70 15.48 21.45357 18.22143 2009-02-01 15.1323456 15.0450804
2009 MAR 3 24.61 15.77 25.56774 18.59355 2009-03-01 3.7458996 15.1856350
2009 APR 4 25.26 14.06 25.76000 17.18667 2009-04-01 1.9409938 18.1923972
2009 MAY 5 24.21 13.98 24.33548 15.09032 2009-05-01 0.5156416 7.3578452
2009 JUN 6 23.26 11.18 23.06667 12.10667 2009-06-01 0.8381503 7.6541850
2009 JUL 7 23.14 12.33 14.55484 12.45806 2009-07-01 58.9849291 1.0279648
2009 AUG 8 23.27 11.84 22.91613 12.49032 2009-08-01 1.5442005 5.2066116
2009 SEP 9 23.93 12.58 23.46000 13.09333 2009-09-01 2.0034101 3.9205703
2009 OCT 10 23.01 12.63 24.13871 13.98065 2009-10-01 4.6759321 9.6608214
2009 NOV 11 24.52 13.34 24.63333 14.63333 2009-11-01 0.4600812 8.8382688
2009 DEC 12 24.18 15.04 24.89032 15.10968 2009-12-01 2.8538103 0.4611443
2010 JAN 1 25.37 15.82 25.63226 16.27097 2010-01-01 1.0231563 2.7716098
2010 FEB 2 25.70 16.95 26.73571 17.68571 2010-02-01 3.8738979 4.1599354
2010 MAR 3 27.26 16.33 26.34839 17.59355 2010-03-01 3.4598433 7.1818849
2010 APR 4 24.95 15.47 25.72000 16.10667 2010-04-01 2.9937792 3.9528146
2010 MAY 5 25.29 13.24 23.75484 14.60000 2010-05-01 6.4625204 9.3150685
2010 JUN 6 23.55 12.05 22.06667 12.19333 2010-06-01 6.7220544 1.1755057
2010 JUL 7 22.62 10.70 22.12903 10.95484 2010-07-01 2.2186589 2.3262662
2010 AUG 8 22.71 10.90 22.33226 10.33548 2010-08-01 1.6914632 5.4619226
2010 SEP 9 23.76 11.62 19.24333 12.16667 2010-09-01 23.4713321 4.4931507
2010 OCT 10 22.60 12.02 23.49677 13.50968 2010-10-01 3.8165843 11.0267431
2010 NOV 11 22.02 11.94 23.28000 14.24000 2010-11-01 5.4123711 16.1516854
2010 DEC 12 23.14 13.48 24.64516 14.82581 2010-12-01 6.1073298 9.0774587