diff --git a/DESCRIPTION b/DESCRIPTION index bac3603061cae83e5140e47f1e1c4b99d14d951a..4dbde26a90c898a1d3a76ea9a5be78db84a87cab 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -2,7 +2,7 @@ Package: dataRetrieval Type: Package Title: Retrieval functions for hydrologic data Version: 1.4.0.9000 -Date: 2014-09-22 +Date: 2014-09-26 Author: Robert M. Hirsch, Laura De Cicco Maintainer: Laura De Cicco <ldecicco@usgs.gov> Description: Collection of functions to help retrieve USGS data from either web @@ -20,7 +20,8 @@ Imports: XML, RCurl, dplyr, - reshape2 + reshape2, + lubridate Suggests: xtable, EGRET, diff --git a/NAMESPACE b/NAMESPACE index a5e7611328958fcbaa3b66705f2b746d7cc2ff66..a01b7035e507c862c88466dc212740c6ed920e2c 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -55,3 +55,4 @@ import(XML) import(reshape2) import(zoo) importFrom(dplyr,rbind_all) +importFrom(lubridate,parse_date_time) diff --git a/R/basicWQPData.R b/R/basicWQPData.R index 470b5403681739381d0f3416b36fd84fbc1ae1c4..aa13897af0a5aa1510ea3f24b51acaa5556b5bd2 100644 --- a/R/basicWQPData.R +++ b/R/basicWQPData.R @@ -7,6 +7,7 @@ #' start and end times. #' @export #' @import RCurl +#' @importFrom lubridate parse_date_time #' @examples #' # These examples require an internet connection to run #' rawSampleURL <- constructNWISURL('USGS-01594440','01075', '1985-01-01', '1985-03-31',"wqp") @@ -39,7 +40,6 @@ readWQPData <- function(url){ colClasses='character', fill = TRUE,nrow=1) classColumns <- setNames(rep('character',ncol(namesData)),names(namesData)) - classColumns["ActivityStartDate"] <- "Date" classColumns[grep("MeasureValue",names(classColumns))] <- NA @@ -62,6 +62,18 @@ readWQPData <- function(url){ timeZoneStart[is.na(timeZoneStart)] <- "" timeZoneEnd[is.na(timeZoneEnd)] <- "" + if("ActivityStartDate" %in% names(retval)){ + if(any(retval$ActivityStartDate != "")){ + suppressWarnings(retval$ActivityStartDate <- as.Date(parse_date_time(retval$ActivityStartDate, c("Ymd", "mdY")))) + } + } + + if("ActivityEndDate" %in% names(retval)){ + if(any(retval$ActivityEndDate != "")){ + suppressWarnings(retval$ActivityEndDate <- as.Date(parse_date_time(retval$ActivityEndDate, c("Ymd", "mdY")))) + } + } + if(any(!is.na(timeZoneStart))){ if(length(unique(timeZoneStart)) == 1){ retval$ActivityStartDateTime <- with(retval, as.POSIXct(paste(ActivityStartDate, ActivityStartTime.Time),format="%Y-%m-%d %H:%M:%S", tz=unique(timeZoneStart))) @@ -101,11 +113,7 @@ readWQPData <- function(url){ } } } - - if(any(retval$ActivityEndDate != "")){ - retval$ActivityEndDate[retval$ActivityEndDate != ""] <- as.Date(retval$ActivityEndDate[retval$ActivityEndDate != ""]) - } - + return(retval) } else {