Skip to contents

Imports data from the Water Quality Portal. This function gets the data from here: https://www.waterqualitydata.us. There are four required input arguments: siteNumbers, parameterCd, startDate, and endDate. parameterCd can either be a USGS 5-digit code, or a characteristic name. The sites can be either USGS, or other Water Quality Portal offered sites. It is required to use the 'full' site name, such as 'USGS-01234567'.

Usage

readWQPqw(
  siteNumbers,
  parameterCd,
  startDate = "",
  endDate = "",
  tz = "UTC",
  querySummary = FALSE,
  ignore_attributes = FALSE,
  convertType = TRUE,
  checkHeader = FALSE
)

Arguments

siteNumbers

character site number. This needs to include the full agency code prefix.

parameterCd

vector of USGS 5-digit parameter code or characteristicNames. Leaving this blank will return all of the measured values during the specified time period.

startDate

character starting date for data retrieval in the form YYYY-MM-DD. Default is "" which indicates retrieval for the earliest possible record. Date arguments are always specified in local time.

endDate

character ending date for data retrieval in the form YYYY-MM-DD. Default is "" which indicates retrieval for the latest possible record. Date arguments are always specified in local time.

tz

character to set timezone attribute of dateTime. Default is "UTC", and converts the date times to UTC, properly accounting for daylight savings times based on the data provided tz_cd column. Possible values to provide are "America/New_York","America/Chicago", "America/Denver","America/Los_Angeles", "America/Anchorage", as well as the following which do not use daylight savings time: "America/Honolulu", "America/Jamaica","America/Managua","America/Phoenix", and "America/Metlakatla". See also OlsonNames() for more information on time zones.

querySummary

logical to look at number of records and unique sites that will be returned from this query.

ignore_attributes

logical to choose to ignore fetching site and parameter attributes. Default is FALSE.

convertType

logical, defaults to TRUE. If TRUE, the function will convert the data to dates, datetimes, numerics based on a standard algorithm. If false, everything is returned as a character.

checkHeader

logical, defaults to FALSE. If TRUE, the code will check that the curl header response for number of rows matches the actual number of rows. During transition to WQX 3.0 profiles, it's unclear if the counts will be correct.

Value

A data frame derived from the default data profile.

There are also several useful attributes attached to the data frame:

NameTypeDescription
urlcharacterThe url used to generate the data
siteInfodata.frameA data frame containing information on the requested sites
variableInfodata.frameA data frame containing information on the requested parameters
queryTimePOSIXctThe time the data was returned

Examples

# \donttest{
rawPcode <- readWQPqw("USGS-01594440", "01075", "", "")
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.
rawCharacteristicName <- readWQPqw("WIDNR_WQX-10032762", "Specific conductance", "", "")
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.
rawPHsites <- readWQPqw(c("USGS-05406450", "USGS-05427949", "WIDNR_WQX-133040"), "pH", "", "")
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.
nwisEx <- readWQPqw("USGS-04024000", c("34247", "30234", "32104", "34220"), "", "2012-12-20")
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.
nwisEx.summary <- readWQPqw("USGS-04024000", c("34247", "30234", "32104", "34220"),
  "", "2012-12-20",
  querySummary = TRUE
)
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.

SC <- readWQPqw(siteNumbers = "USGS-05288705", parameterCd = "00300", convertType = FALSE)
#> NEWS: USGS data availability and format are changing. 
#> Beginning in mid-March 2024 the data obtained from legacy profiles
#> will not include new USGS data or recent updates to existing data. 
#> To view the status of changes in data availability and code functionality, visit:
#> https://doi-usgs.github.io/dataRetrieval/articles/Status.html
#> If you have additional questions about these changes, 
#> email CompTools@usgs.gov.
# }