GGPLOT2     HEALTH     R     EMISSIONS     STATISTICS     GIS   WRF Open Air Air Pollution  

domingo, 8 de enero de 2012

¿Democracia Ambiental entre Pudahuel y Las Condes? Calidad de Aire en Santiago usando OpenAir

Estuve trabajando para una tarea de Contaminación Atmosférica con mi profesora Laura Gallardo del CMM de la Universidad de Chile y no encontré mejor ocasión para ocupar las librerías OpenAir desarroladas por David Carslaw del King's Collegue London y Karl Ropkins de University of Leeds.
En esta presentación solo me concentraré en presentar la librería openair, y algunas de sus asombrosas funciones.
Partimos por lo primero:
Ingresamos al SINCA y bajamos datos, yo bajé de Las Condes y Pudahuel, PM10, PM2.5, O3 y Velocidad del Viento del año 2011. La Dirección no estaba disponible lamentablemente, y por eso no pudo ser posible realizar algunos análisis
#Estoy usando RStudio, es genial!
library(openair)
setwd("c:/data")
aire<-import("2011.csv", date.name="fecha", time.name="fecha")
    date1     date2      o3lc    pm10lc    pm23lc      wslc     pm10p     pm25p
"POSIXct"  "POSIXt" "numeric" "numeric" "numeric" "numeric" "numeric" "numeric"
      o3p       wsp
"numeric" "numeric"

#Los datos están en online
#puedes intentar los siguiente
aire<-read.csv(url("http://aire.cenma.cl/sibarra/wp-content/uploads/2012/01/2011.csv"))
#Y luego importar a openair, no lo he hecho así
#Es muy importane el orden de los datos para importar con openair
#Lo mas fácil es mantener el formato "d/m/y H:M"
#Además la opción date.name y time.name indica el nombre de la columna que
#tiene la fecha y la hora, en este caso la misma columna, mas fácil
attach(aire)
names(aire)
[1] "date"   "o3lc"   "pm10lc" "pm23lc" "wslc"   "pm10p"  "pm25p"  "o3p"  
[9] "wsp"  
#En mi hoja de datos la variable fecha tiene el nombre de "fecha"
#pero una vez que es reconocido en openair, cambia a date
head(aire)
                 date   o3lc pm10lc pm23lc   wslc pm10p pm25p   o3p   wsp
1 2011-01-01 00:00:00 10.920   23.0  14.92 0.6695  27.5 11.75 7.564 1.143
2 2011-01-01 01:00:00  1.247   48.5  26.08 0.9834  45.5 17.33    NA 1.096
3 2011-01-01 02:00:00  1.247   46.5  27.92 0.9106  44.5 14.00    NA 1.252
4 2011-01-01 03:00:00  1.908   36.5  24.83 0.9791  40.0 17.00    NA 1.455
5 2011-01-01 04:00:00  5.959   39.0  18.92 2.0230  30.0 14.00 1.360 1.492
6 2011-01-01 05:00:00 11.500   34.5  17.00 1.2390  29.0 10.42    NA 1.505
#Ahora estamos listos para empezar
timePlot(aire,pollutant=c("pm10p","pm10lc"),lwd=4,lty=1, main="MP10 en Pudahuel y Las Condes (ug/m^3)")
#Se aprecian mayores concentraciones en Pudahuel



timePlot(aire,pollutant=c("pm25p","pm25lc"),lwd=4,lty=1, main="PM2.5 en Pudahuel y Las Condes (ug/m^3)")
##Se aprecian mayores concentraciones en Pudahuel




timePlot(aire,pollutant=c(o3p","o3lc"),lwd=4,lty=1, main="O3 en Pudahuel y Las Condes (ppb)")
#Se aprecian mayores concentraciones en Las Condes

timePlot(aire,pollutant=c("pm10p","pm10lc"),lwd=4,lty=1, main="PM10 en Pudahuel y Las Condes (ug/m^3)", group=T, avg.time="month")
#Es claro como se alcanzan mayores concentraciones de PM10 en Pudahuel

timePlot(aire,pollutant=c("pm25p","pm25lc"),lwd=4,lty=1, main="PM2.5 en Pudahuel y Las Condes (ug/m^3)", group=T, avg.time="month")
#Sucede lo mismo con el PM2.5 que con el PM10


timePlot(aire,pollutant=c("o3p","o3lc"),lwd=4,lty=1, main="O3 en Pudahuel y Las Condes (ppb)", group=T, avg.time="month")
#Para el caso del Ozono, se aprecian mayores concentraciones en Las Condes, pero #en invierno mayores en Pudahuel.


calendarPlot(aire,pollutant="pm10p", year=2011)
#Esta función es muy gráfica, y permite ver los dias con diferente promedio
#diarios de contaminación, PM10 en este caso
#Acá se ve como se alcanzan promedios diarios superiores a 250 (ug/m^3)
#En Mayo, Junio y Julio, que es un valor alto y dañino a la salud

calendarPlot(aire,pollutant="o3lc", year=2011)
#Caso contrario, el Ozono en Las Condes indica que el máximo promedio diario
#se da a los 40 (ppb), que es un valor alto y dañino a la salud


  
timeVariation(aire,pollutant=c("o3lc","o3p"), ylab="Concentración (ppb)", main="Concentraciones de O3 en Las Condes y Pudahuel")
#En esta gráfica se vé cláramente como en Las Condes
#se alcanzan mayores superiores de Ozono que en Pudahuel



timeVariation(aire,pollutant=c("pm10lc","pm10p"), ylab="Concentración (ppb)", main="Concentraciones de PM10 en Las Condes y Pudahuel")
#Caso contrario, se aprecian mayores concentraciones de PM10
#En Pudahuel, que en Las Condes


trendLevel(aire,pollutant="pm25p",y="wsp", main="Velocidad del Viento y PM2.5 en Pudahuel")
#Este gráfico es muy ilustrativo
#En él se ve como altos promedios diarios de PM2.5 se alcanzan
#A velocidades bajas, que varían desde la calma
#hasta 1 (m/s) aproximadamente


corPlot(aire, type="season")
#Finalmente, esta función permite obtener un correlograma
#bastante sencillo, en donde por ejemplo
#el PM10 de Pudahuel tiene R^2=81 con el PM2.5 de Pudahuel
#Sin embargo, con el PM10 de Las Condes R^2 es 30, en primavera



Una de las conclusiones es la democracia ambiental entre el PM10-PM2.5 y O3 en Pudahuel y Las Condes. Mientras en el sector poniente de la capital se alcanzan valores críticos y "visibles" sobre las normas, en verano tambien se alcanzan valores críticos, pero en el sector oriente, y es "invisible".

Encontré que esta librería es muy ilustrativa, permite comunicar los resultados de forma fácil y sobre todo, es muy fácil de usar. Espero ir a KCL a hacer mi doctorado. Ahí estoy en conversaciones!

------------------------------------------------------------------------------------------------------------

27/06/2012
Luego de reflexionar he pensado que la exposición no es un indicador de justicia ambiental, ya que a pesar que hay más O3 en el verano en el sector oriente, eso no implica mayor Riesgo (RR), por lo que se necesita es un estudio de riesgo comparativo, con un indicador de Justicia Ambiental.