openair
package. Files are imported from a remote server operated by AEA that
provides air quality data files as R data objects.importAURN(site = "my1", year = 2009, pollutant = "all", hc = FALSE)
site = c("my1", "nott")
--- to import Marylebone Road and Nottingham for example.year = 1990:2000
. To import several specfic years
use year = c(1990, 1995, 2000)
for example.pollutant = c("nox", "no2")
.hc = TRUE
will ensure hydrocarbon data are imported. The default
is however not to as most users will not be interested in using
hydrocarbon data and the resulting data framesimportAURN
function has been written to make it easy to import
data from the UK AURN. AEA have provided .RData files (R workspaces) of all
individual sites and years for the AURN. These files are updated on a daily
basis. This approach requires a link to the Internet to work.
There are several advantages over the web portal approach where .csv files
are downloaded. First, it is quick to select a range of sites, pollutants
and periods (see examples below). Second, storing the data as .RData
objects is very efficient as they are about four times smaller than .csv
files --- which means the data downloads quickly and saves bandwidth.
Third, the function completely avoids any need for data manipulation or
setting time formats, time zones etc. Finally, it is easy to import many
years of data beyond the current limit of about 64,000 lines. The final
point makes it possible to download several long time series in one go. The
function also has the advantage that the proper site name is imported and
used in openair
functions.
The site codes and pollutant names can be upper or lower case. The function
will issue a warning when data less than six months old is downloaded,
which may not be ratified.
The data are imported by stacking sites on top of one another and will have
field names site
, code
(the site code) and pollutant
.
Sometimes it is useful to have columns of site data. This can be done using
the reshape
function --- see examples below.
All units are expressed in mass terms for gaseous species (ug/m3
for NO, NO2, NOx (as NO2), SO2 and hydrocarbons; and mg/m3 for
CO). PM10 concentrations are provided in gravimetric units of
ug/m3 or scaled to be comparable with these units. Over the years
a variety of instruments have been used to measure particulate
matter and the technical issues of measuring PM10 are complex. In
recent years the measurements rely on FDMS (Filter Dynamics
Measurement System), which is able to measure the volatile
component of PM. In cases where the FDMS system is in use there
will be a separate volatile component recorded as 'v10' and
non-volatile component 'nv10', which is already included in the
absolute PM10 measurement. Prior to the use of FDMS the
measurements used TEOM (Tapered Element Oscillating. Microbalance)
and these concentrations have been multiplied by 1.3 to provide an
estimate of the total mass including the volatile fraction.
The few BAM (Beta-Attenuation Monitor) instruments that have been
incorporated into the network throughout its history have been scaled by
1.3 if they have a heated inlet (to account for loss of volatile particles)
and 0.83 if they do not have a heated inlet. The few TEOM instruments in
the network after 2008 have been scaled using VCM (Volatile Correction
Model) values to account for the loss of volatile particles. The object of
all these scaling processes is to provide a reasonable degree of comparison
between data sets and with the reference method and to produce a consistent
data record over the operational period of the network, however there may
be some discontinuity in the time series associated with instrument
changes.
No corrections have been made to teh PM2.5 data. The volatile component of
FDMS PM2.5 (where available) is shown in the 'v2.5' column.
While the function is being developed, the following site codes should help
with selection.
importKCL
, importADMS
,
importSAQN
## import all pollutants from Marylebone Rd from 1990:2009
mary <- importAURN(site = "my1", year = 2000:2009)
## import nox, no2, o3 from Marylebone Road and Nottingham Centre for 2000
thedata <- importAURN(site = c("my1", "nott"), year = 2000,
pollutant = c("nox", "no2", "o3"))
## import over 20 years of Mace Head O3 data!
o3 <- importAURN(site = "mh", year = 1987:2009)
## import hydrocarbon (and other) data from Marylebone Road
mary <- importAURN(site = "my1", year =1998, hc = TRUE)
## reshape the data so that each column represents a pollutant/site
thedata <- importAURN(site = c("nott", "kc1"), year = 2008,
pollutant = "o3")
thedata <- melt(thedata, measure.vars = "o3")
thedata <- dcast(thedata, ... ~ variable + site + code)
## thedata now has columns o3_Nottingham Centre_NOTT o3_London N. Kensington_KC1
## now can export as a csv file:
write.csv(thedata, file = "~/temp/thedata.csv")
Run the code above in your browser using DataLab