Package: AirMonitor 0.4.6

Jonathan Callahan

AirMonitor: Air Quality Data Analysis

Utilities for working with hourly air quality monitoring data with a focus on small particulates (PM2.5). A compact data model is structured as a list with two dataframes. A 'meta' dataframe contains spatial and measuring device metadata associated with deployments at known locations. A 'data' dataframe contains a 'datetime' column followed by columns of measurements associated with each "device-deployment". Algorithms to calculate NowCast and the associated Air Quality Index (AQI) are defined at the US Environmental Projection Agency AirNow program: <https://document.airnow.gov/technical-assistance-document-for-the-reporting-of-daily-air-quailty.pdf>.

Authors:Jonathan Callahan [aut, cre], Spencer Pease [ctb], Hans Martin [ctb], Rex Thompson [ctb]

AirMonitor_0.4.6.tar.gz
AirMonitor_0.4.6.zip(r-4.7)AirMonitor_0.4.6.zip(r-4.6)AirMonitor_0.4.6.zip(r-4.5)
AirMonitor_0.4.6.tgz(r-4.6-any)AirMonitor_0.4.6.tgz(r-4.5-any)
AirMonitor_0.4.6.tar.gz(r-4.7-any)AirMonitor_0.4.6.tar.gz(r-4.6-any)
AirMonitor_0.4.6.tgz(r-4.6-emscripten)
manual.pdf |manual.html
DESCRIPTION |NEWS
card.svg |card.png
AirMonitor/json (API)

# Install 'AirMonitor' in R:
install.packages('AirMonitor', repos = c('https://mazamascience.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/mazamascience/airmonitor/issues

Pkgdown/docs site:https://mazamascience.github.io

Datasets:

On CRAN:

Conda:

7.31 score 9 stars 216 scripts 736 downloads 75 exports 143 dependencies

Last updated from:878ba361b5. Checks:7 ERROR, 2 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64ERROR172
source / vignettesOK244
linux-release-x86_64ERROR175
macos-release-arm64ERROR84
macos-oldrel-arm64ERROR80
windows-develERROR111
windows-releaseERROR93
windows-oldrelERROR131
wasm-releaseOK188

Exports:%>%addAQILegendaddAQILinesaddAQIStackedBaraddShadedNightAirFire_S3_archiveBaseUrlairnow_loadAnnualairnow_loadDailyairnow_loadLatestairnow_loadMonthlyairsis_loadAnnualairsis_loadDailyairsis_loadLatestaqiCategoriesaqiColorsclarity_loadAnnualclarity_loadLatestCONUScoreMetadataNamesepa_aqs_loadAnnualmonitor_aqimonitor_arrangemonitor_bestTimezonemonitor_checkmonitor_collapsemonitor_combinemonitor_dailyBarplotmonitor_dailyStatisticmonitor_dailyThresholdmonitor_distinctmonitor_dropEmptymonitor_dygraphmonitor_filtermonitor_filterByDistancemonitor_filterDatemonitor_filterDatetimemonitor_filterMetamonitor_fromPWFSLSmokemonitor_getCurrentStatusmonitor_getDatamonitor_getDistancemonitor_getMetamonitor_isEmptymonitor_isValidmonitor_leafletmonitor_loadmonitor_loadAnnualmonitor_loadDailymonitor_loadLatestmonitor_movemonitor_mutatemonitor_nowcastmonitor_pullmonitor_reordermonitor_replaceValuesmonitor_selectmonitor_selectWheremonitor_setTimeAxismonitor_slice_headmonitor_slice_tailmonitor_timeInfomonitor_timeRangemonitor_timeseriesPlotmonitor_toAQCTablemonitor_toCSVmonitor_toPWFSLSmokemonitor_trimDatenowcast_to_aqipollutantNamesQC_invalidateConsecutiveSuspectValuesUS_52US_AQIwrcc_loadAnnualwrcc_loadDailywrcc_loadLatest

Dependencies:askpassbase64encbitbit64brewbriobslibcachemcallrclassclassIntclicliprcommonmarkcpp11crayoncredentialscrosstalkcurlDBIdescdevtoolsdiffobjdigestdownlitdplyrdygraphse1071ellipsisevaluatefansifarverfastmapfontawesomefsgenericsgeodistgeohashToolsgertgitcredsgluehighrhmshtmltoolshtmlwidgetshttpuvhttrhttr2inijquerylibjsonliteKernSmoothknitrlabelinglaterlatticelazyevalleafletleaflet.providerslifecycleloggerlubridatemagrittrMASSMazamaCoreUtilsMazamaRollUtilsMazamaTimeSeriesmemoisemimeminiUIopensslotelpakpillarpkgbuildpkgconfigpkgdownpkgloadpngpraiseprettyunitsprocessxprofvisprogresspromisesproxypspurrrR6raggrappdirsrasterrcmdcheckRColorBrewerRcppreadrrlangrmarkdownroxygen2rprojrootrstudioapirversionsrvests2sassscalesselectrsessioninfosfshinysourcetoolsspstringistringrsyssystemfontsterratestthattextshapingtibbletidyselecttimechangetinytextzdbunitsurlcheckerusethisutf8vctrsviridisLitevroomwaldowhiskerwithrwkxfunxml2xopenxtablextsyamlzipzoo

Introduction to AirMonitor
Installation | Available data | Recipes | A first example

Last update: 2025-10-17
Started: 2022-02-15

Data Model

Last update: 2025-10-06
Started: 2022-03-29

Developer Style Guide
R Style Guide | Naming Objects | Naming Functions | Naming Files | Syntax | Spacing | Lists

Last update: 2022-10-31
Started: 2022-02-15

Readme and manuals

Help Manual

Help pageTopics
Add an AQI legend to a mapaddAQILegend
Add AQI lines to a plotaddAQILines
Create stacked AQI baraddAQIStackedBar
Add nighttime shading to a timeseries plotaddShadedNight
USFS maintained archive base URLAirFire_S3_archiveBaseUrl
Load annual AirNow monitoring dataairnow_loadAnnual
Load daily AirNow monitoring dataairnow_loadDaily
Load most recent AirNow monitoring dataairnow_loadLatest
Load monthly AirNow monitoring dataairnow_loadMonthly
Load annual AIRSIS monitoring dataairsis_loadAnnual
Load daily AIRSIS monitoring dataairsis_loadDaily
Load most recent AIRSIS monitoring dataairsis_loadLatest
Generate AQI categoriesaqiCategories
Generate AQI colorsaqiColors
Camp Fire example datasetCamp_Fire
Carmel Valley example datasetCarmel_Valley
Load annual Clarity monitoring dataclarity_loadAnnual
Load most recent Clarity monitoring dataclarity_loadLatest
CONUS state codesCONUS
Names of standard metadata columnscoreMetadataNames
Load annual EPA AQS monitoring dataepa_aqs_loadAnnual
Calculate hourly NowCast-based AQI valuesmonitor_aqi
Order _mts_monitor_ time series by metadata valuesmonitor_arrange
Return the most common timezonemonitor_bestTimezone
Check an _mts_monitor_ object for validitymonitor_check
Collapse an _mts_monitor_ object into a single time seriesmonitor_collapse
Combine multiple _mts_monitor_ objectsmonitor_combine
Create daily barplotmonitor_dailyBarplot
Create daily statistics for each monitor in an _mts_monitor_ objectmonitor_dailyStatistic
Daily counts of values at or above a thresholdmonitor_dailyThreshold
Retain only distinct data records in 'monitor$data'monitor_distinct
Drop device deployments with all missing datamonitor_dropEmpty
Create Interactive Time Series Plotmonitor_dygraph
Filter by distance from a target locationmonitor_filterByDistance
Date filtering for _mts_monitor_ objectsmonitor_filterDate
Datetime filtering for _mts_monitor_ objectsmonitor_filterDatetime
General purpose metadata filtering for _mts_monitor_ objectsmonitor_filter monitor_filterMeta
Convert a _ws_monitor_ object from the PWFSLSmoke packagemonitor_fromPWFSLSmoke
Get current status of monitorsmonitor_getCurrentStatus
Extract dataframes from _mts_monitor_ objectsmonitor_getData monitor_getDataFrame monitor_getMeta
Calculate distances from _mts_monitor_ locations to a location of interestmonitor_getDistance
Test for an empty _mts_monitor_ objectmonitor_isEmpty
Test _mts_monitor_ object for correct structuremonitor_isValid
Leaflet interactive map of monitor locationsmonitor_leaflet
Load monitoring data from all sourcesmonitor_load
Load annual monitoring data from all sourcesmonitor_loadAnnual
Load daily monitoring data from all sourcesmonitor_loadDaily
Load most recent monitoring data from all sourcesmonitor_loadLatest
Move an _mts_monitor_ object to a new locationmonitor_move
Apply a function to _mts_monitor_ time seriesmonitor_mutate
Apply NowCast algorithm to _mts_monitor_ datamonitor_nowcast
Extract a column of metadata or datamonitor_pull
Replace _mts_monitor_ data with another valuemonitor_replaceValues
Subset and reorder time series within an _mts_monitor_ objectmonitor_reorder monitor_select
Data-based subsetting of time series within an _mts_monitor_ objectmonitor_selectWhere
Extend/contract _mts_monitor_ time series to new start and end timesmonitor_setTimeAxis
Subset time series based on their position within an _mts_monitor_ objectmonitor_slice_head monitor_slice_tail
Get time related information for a monitormonitor_timeInfo
Get the time range for a monitormonitor_timeRange
Create timeseries plotmonitor_timeseriesPlot
Convert monitor data into an AQI category tablemonitor_toAQCTable
Convert monitor data as CSVmonitor_toCSV
Convert a mts_monitor object to a _ws_monitor_ object for the PWFSLSmoke packagemonitor_toPWFSLSmoke
Trim a _mts_monitor_ object to full daysmonitor_trimDate
Convert PM2.5 NowCast concentration (µg/m³) to AQInowcast_to_aqi
NW_Megafires example datasetNW_Megafires
Names of standard pollutantspollutantNames
Invalidate consecutive suspect valuesQC_invalidateConsecutiveSuspectValues
US state codesUS_52
US EPA AQI Index levels, names, colors and action textUS_AQI
Load annual WRCC monitoring datawrcc_loadAnnual
Load daily WRCC monitoring datawrcc_loadDaily
Load most recent WRCC monitoring datawrcc_loadLatest