diff --git a/R/readWQPdata.R b/R/readWQPdata.R index 66c56e0ce2515ee52fff56e86d263a8910b108c4..a0573d53951fc9ae09e71483df5b7abffad22881 100644 --- a/R/readWQPdata.R +++ b/R/readWQPdata.R @@ -116,38 +116,42 @@ readWQPdata <- function(...){ retval <- importWQP(urlCall,FALSE) - siteInfo <- whatWQPsites(...) - - siteInfoCommon <- data.frame(station_nm=siteInfo$MonitoringLocationName, - agency_cd=siteInfo$OrganizationIdentifier, - site_no=siteInfo$MonitoringLocationIdentifier, - dec_lat_va=siteInfo$LatitudeMeasure, - dec_lon_va=siteInfo$LongitudeMeasure, - hucCd=siteInfo$HUCEightDigitCode, + if(!is.na(retval)){ + siteInfo <- whatWQPsites(...) + + siteInfoCommon <- data.frame(station_nm=siteInfo$MonitoringLocationName, + agency_cd=siteInfo$OrganizationIdentifier, + site_no=siteInfo$MonitoringLocationIdentifier, + dec_lat_va=siteInfo$LatitudeMeasure, + dec_lon_va=siteInfo$LongitudeMeasure, + hucCd=siteInfo$HUCEightDigitCode, + stringsAsFactors=FALSE) + + siteInfo <- cbind(siteInfoCommon, siteInfo) + + retvalVariableInfo <- retval[,c("CharacteristicName","USGSPCode", + "ResultMeasure.MeasureUnitCode","ResultSampleFractionText")] + retvalVariableInfo <- unique(retvalVariableInfo) + + variableInfo <- data.frame(characteristicName=retval$CharacteristicName, + parameterCd=retval$USGSPCode, + param_units=retval$ResultMeasure.MeasureUnitCode, + valueType=retval$ResultSampleFractionText, stringsAsFactors=FALSE) - - siteInfo <- cbind(siteInfoCommon, siteInfo) - - - variableInfo <- data.frame(characteristicName=retval$CharacteristicName, - parameterCd=retval$USGSPCode, - param_units=retval$ResultMeasure.MeasureUnitCode, - valueType=retval$ResultSampleFractionText, - stringsAsFactors=FALSE) - variableInfo <- unique(variableInfo) - - if(any(!is.na(variableInfo$parameterCd))){ - pCodeToName <- pCodeToName - varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),] - names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd" - variableInfo <- merge(variableInfo, varExtras, by="parameterCd") + + if(any(!is.na(variableInfo$parameterCd))){ + pCodeToName <- pCodeToName + varExtras <- pCodeToName[pCodeToName$parm_cd %in% unique(variableInfo$parameterCd[!is.na(variableInfo$parameterCd)]),] + names(varExtras)[names(varExtras) == "parm_cd"] <- "parameterCd" + variableInfo <- merge(variableInfo, varExtras, by="parameterCd") + variableInfo <- unique(variableInfo) + } + + attr(retval, "siteInfo") <- siteInfo + attr(retval, "variableInfo") <- variableInfo + attr(retval, "url") <- urlCall + attr(retval, "queryTime") <- Sys.time() + + return(retval) } - - attr(retval, "siteInfo") <- siteInfo - attr(retval, "variableInfo") <- variableInfo - attr(retval, "url") <- urlCall - attr(retval, "queryTime") <- Sys.time() - - return(retval) - } \ No newline at end of file