R: Calculate rollingMean values

rollingMean {openair} | R Documentation

## Calculate rollingMean values

### Description

Calculate rollingMean values taking account of data capture thresholds

### Usage

    rollingMean(
      mydata,
      pollutant = "o3",
      width = 8,
      new.name = "rolling",
      data.thresh = 75,
      align = "centre",
      ...
    )

### Arguments

`mydata` | A data frame containing a `date` field. `mydata` must contain a `date` field in `Date` or `POSIXct` format. The input time series must be regular e.g. hourly, daily.
`pollutant` | The name of a pollutant e.g. `pollutant = "o3"`.
`width` | The averaging period (rolling window width) to use e.g. `width = 8` will generate 8-hour rolling mean values when hourly data are analysed.
`new.name` | The name given to the new rollingMean variable. If not supplied it will create a name based on the name of the pollutant and the averaging period used.
`data.thresh` | The data capture threshold in calculated if data capture over the period of interest is less than this value. For example, with `width = 8` and `data.thresh = 75` at least 6 hours are required to calculate the mean, else `NA` is returned.
`align` | specifyies how the moving window should be aligned. `"right"` means that the previous `hours` (including the current) are averaged. This seems to be the default for UK air quality rolling mean statistics. `"left"` means that the forward `hours` are averaged, and `"centre"` or `"center"`, which is the default.
`...` | other arguments, currently unused.

### Details

This is a utility function mostly designed to calculate rolling mean statistics relevant to some pollutant limits e.g. 8 hour rolling means for ozone and 24 hour rolling means for PM10. However, the function has a more general use in helping to display rolling mean values in flexible ways e.g. with the rolling window width left, right or centre aligned.

The function will try and fill in missing time gaps to get a full time sequence but return a data frame with the same number of rows supplied.

### Author(s)

David Carslaw

### Examples

    ## rolling 8-hour mean for ozone
    mydata <- rollingMean(mydata, pollutant = "o3", width = 8, new.name =
    "rollingo3", data.thresh = 75, align = "right")

[Package openair version 2.8-5 Index]